1414
1515#define SETS_RESERVE 512
1616
17+ namespace sets {
18+
1719class SettingsBase {
18- typedef std::function<void (sets:: Builder& b)> BuildCallback;
19- typedef std::function<void (sets:: Updater& upd)> UpdateCallback;
20+ typedef std::function<void (Builder& b)> BuildCallback;
21+ typedef std::function<void (Updater& upd)> UpdateCallback;
2022
2123 public:
2224 SettingsBase (const String& title = " " , GyverDB* db = nullptr ) : _title(title), _db(db) {}
@@ -74,14 +76,6 @@ class SettingsBase {
7476 // отправка для родительского класса
7577 virtual void send (uint8_t * data, size_t len) {}
7678
77- File openFileWrite (Text path) {
78- return _fs.openWrite (path.c_str ());
79- }
80-
81- File openFileRead (Text path) {
82- return _fs.openRead (path.c_str ());
83- }
84-
8579 bool authenticate (Text passh) {
8680 return !_passh || (_passh == passh.toInt32HEX ());
8781 }
@@ -107,8 +101,8 @@ class SettingsBase {
107101 if (_dbupdates) _db->useUpdates (true );
108102 }
109103 if (_build_cb) {
110- sets:: Build action (sets:: Build::Type::Set, granted, id, value);
111- sets:: Builder b (action);
104+ Build action (Build::Type::Set, granted, id, value);
105+ Builder b (action);
112106 _build_cb (b);
113107 if (b.isReload ()) _sendBuild (granted);
114108 else _answerEmpty ();
@@ -119,8 +113,8 @@ class SettingsBase {
119113
120114 case SH (" click" ):
121115 if (_build_cb) {
122- sets:: Build action (sets:: Build::Type::Click, granted, id);
123- sets:: Builder b (action);
116+ Build action (Build::Type::Click, granted, id);
117+ Builder b (action);
124118 _build_cb (b);
125119 if (b.isReload ()) _sendBuild (granted);
126120 else _answerEmpty ();
@@ -131,17 +125,17 @@ class SettingsBase {
131125
132126 case SH (" ping" ):
133127 if (_upd_cb || _db) {
134- sets:: Packet p;
135- sets:: Updater upd (p);
128+ Packet p;
129+ Updater upd (p);
136130 p.beginObj ();
137- p.addCode (sets:: Code::type, sets:: Code::update);
138- p.beginArr (sets:: Code::content);
131+ p.addCode (Code::type, Code::update);
132+ p.beginArr (Code::content);
139133 if (_db && _dbupdates) {
140134 while (_db->updatesAvailable ()) {
141135 size_t id = _db->updateNext ();
142136 p.beginObj ();
143- p.addUint (sets:: Code::id, id);
144- p.addKey (sets:: Code::value);
137+ p.addUint (Code::id, id);
138+ p.addKey (Code::value);
145139 p.addFromDB (_db, id);
146140 p.endObj ();
147141 }
@@ -167,7 +161,7 @@ class SettingsBase {
167161
168162 case SH (" remove" ):
169163 if (granted) {
170- _fs .remove (value. c_str () );
164+ FS .remove (value);
171165 _sendFs (true );
172166 }
173167 break ;
@@ -180,7 +174,6 @@ class SettingsBase {
180174 String _title;
181175 size_t _passh = 0 ;
182176 GyverDB* _db = nullptr ;
183- sets::FS _fs;
184177 uint16_t _updPeriod = 2500 ;
185178 bool _dbupdates = true ;
186179 bool _rst = false ;
@@ -193,34 +186,34 @@ class SettingsBase {
193186
194187 void _sendFs (bool granted) {
195188 String str;
196- if (granted) _fs. list (str, " /" );
189+ if (granted) FS. listDir (str, " /" , true );
197190
198- sets:: Packet p;
191+ Packet p;
199192 p.beginObj ();
200- p.addCode (sets:: Code::type, sets:: Code::fs);
201- p.addText (sets:: Code::content, str);
202- p.addUint (sets:: Code::used, _fs .usedSpace ());
203- p.addUint (sets:: Code::total, _fs .totalSpace ());
204- if (!granted) p.addText (sets:: Code::error, " Access denied" );
193+ p.addCode (Code::type, Code::fs);
194+ p.addText (Code::content, str);
195+ p.addUint (Code::used, FS .usedSpace ());
196+ p.addUint (Code::total, FS .totalSpace ());
197+ if (!granted) p.addText (Code::error, " Access denied" );
205198 p.endObj ();
206199 send (p.buf (), p.length ());
207200 }
208201
209202 void _sendBuild (bool granted) {
210203 if (_build_cb) {
211- sets:: Packet p;
204+ Packet p;
212205 p.reserve (SETS_RESERVE);
213206 p.beginObj ();
214- p.addCode (sets:: Code::type, sets:: Code::build);
215- p.addUint (sets:: Code::ping, _updPeriod);
216- if (_title.length ()) p.addText (sets:: Code::title, _title);
217- if (_passh) p.addBool (sets:: Code::granted, granted);
207+ p.addCode (Code::type, Code::build);
208+ p.addUint (Code::ping, _updPeriod);
209+ if (_title.length ()) p.addText (Code::title, _title);
210+ if (_passh) p.addBool (Code::granted, granted);
218211#ifdef ATOMIC_FS_UPDATE
219- p.addBool (sets:: Code::gzip, true );
212+ p.addBool (Code::gzip, true );
220213#endif
221- p.beginArr (sets:: Code::content);
222- sets:: Build action (sets:: Build::Type::Build, granted);
223- sets:: Builder builder (action, _db, &p);
214+ p.beginArr (Code::content);
215+ Build action (Build::Type::Build, granted);
216+ Builder builder (action, _db, &p);
224217 _build_cb (builder);
225218 p.endArr ();
226219 p.endObj ();
@@ -229,4 +222,6 @@ class SettingsBase {
229222 _answerEmpty ();
230223 }
231224 }
232- };
225+ };
226+
227+ }
0 commit comments