Skip to content

Commit 664ca5e

Browse files
committed
Redefine open/remove to allow the handing over of the file parameter as well as adding function for renaming a file on the OTA storage medium.
1 parent 1ee31e5 commit 664ca5e

File tree

3 files changed

+15
-8
lines changed

3 files changed

+15
-8
lines changed

src/utility/ota/OTAStorage.h

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -45,10 +45,11 @@ class OTAStorage
4545

4646
virtual Type type () = 0;
4747
virtual bool init () = 0;
48-
virtual bool open () = 0;
48+
virtual bool open (char const * file_name) = 0;
4949
virtual size_t write (uint8_t const * const buf, size_t const num_bytes) = 0;
5050
virtual void close () = 0;
51-
virtual void remove() = 0;
51+
virtual void remove(char const * file_name) = 0;
52+
virtual bool rename(char const * old_file_name, char const * new_file_name) = 0;
5253
virtual void deinit() = 0;
5354

5455
};

src/utility/ota/OTAStorage_MKRMEM.cpp

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -54,10 +54,10 @@ bool OTAStorage_MKRMEM::init()
5454
return true;
5555
}
5656

57-
bool OTAStorage_MKRMEM::open()
57+
bool OTAStorage_MKRMEM::open(char const * file_name)
5858
{
5959
filesystem.clearerr();
60-
_file = new File(filesystem.open("UPDATE.BIN", CREATE | WRITE_ONLY| TRUNCATE));
60+
_file = new File(filesystem.open(file_name, CREATE | WRITE_ONLY| TRUNCATE));
6161
if(SPIFFS_OK != filesystem.err()) {
6262
Debug.print(DBG_ERROR, "OTAStorage_MKRMEM::open - open() failed with error code %d", filesystem.err());
6363
delete _file;
@@ -77,9 +77,14 @@ void OTAStorage_MKRMEM::close()
7777
delete _file;
7878
}
7979

80-
void OTAStorage_MKRMEM::remove()
80+
void OTAStorage_MKRMEM::remove(char const * file_name)
8181
{
82-
filesystem.remove("UPDATE.BIN");
82+
filesystem.remove(file_name);
83+
}
84+
85+
bool OTAStorage_MKRMEM::rename(char const * old_file_name, char const * new_file_name)
86+
{
87+
return (SPIFFS_OK == filesystem.rename(old_file_name, new_file_name));
8388
}
8489

8590
void OTAStorage_MKRMEM::deinit()

src/utility/ota/OTAStorage_MKRMEM.h

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,10 +43,11 @@ class OTAStorage_MKRMEM : public OTAStorage
4343

4444
virtual Type type () override { return Type::MKRMEM; }
4545
virtual bool init () override;
46-
virtual bool open () override;
46+
virtual bool open (char const * file_name) override;
4747
virtual size_t write (uint8_t const * const buf, size_t const num_bytes) override;
4848
virtual void close () override;
49-
virtual void remove() override;
49+
virtual void remove(char const * file_name) override;
50+
virtual bool rename(char const * old_file_name, char const * new_file_name) override;
5051
virtual void deinit() override;
5152

5253

0 commit comments

Comments
 (0)