Skip to content

Commit e34a56a

Browse files
committed
Simplify addPropertyReal logic and remove no more needed private methods
1 parent e7ee413 commit e34a56a

File tree

2 files changed

+18
-54
lines changed

2 files changed

+18
-54
lines changed

src/ArduinoIoTCloud.cpp

+18-47
Original file line numberDiff line numberDiff line change
@@ -69,53 +69,58 @@ void ArduinoIoTCloudClass::addCallback(ArduinoIoTCloudEvent const event, OnCloud
6969
/* The following methods are used for non-LoRa boards */
7070
Property& ArduinoIoTCloudClass::addPropertyReal(bool& property, String name, Permission const permission)
7171
{
72-
return addPropertyReal(property, _thing_property_container, name, -1, permission);
72+
return addPropertyReal(property, name, -1, permission);
7373
}
7474
Property& ArduinoIoTCloudClass::addPropertyReal(float& property, String name, Permission const permission)
7575
{
76-
return addPropertyReal(property, _thing_property_container, name, -1, permission);
76+
return addPropertyReal(property, name, -1, permission);
7777
}
7878
Property& ArduinoIoTCloudClass::addPropertyReal(int& property, String name, Permission const permission)
7979
{
80-
return addPropertyReal(property, _thing_property_container, name, -1, permission);
80+
return addPropertyReal(property, name, -1, permission);
8181
}
8282
Property& ArduinoIoTCloudClass::addPropertyReal(unsigned int& property, String name, Permission const permission)
8383
{
84-
return addPropertyReal(property, _thing_property_container, name, -1, permission);
84+
return addPropertyReal(property, name, -1, permission);
8585
}
8686
Property& ArduinoIoTCloudClass::addPropertyReal(String& property, String name, Permission const permission)
8787
{
88-
return addPropertyReal(property, _thing_property_container, name, -1, permission);
88+
return addPropertyReal(property, name, -1, permission);
8989
}
9090
Property& ArduinoIoTCloudClass::addPropertyReal(Property& property, String name, Permission const permission)
9191
{
92-
return addPropertyReal(property, _thing_property_container, name, -1, permission);
92+
return addPropertyReal(property, name, -1, permission);
9393
}
9494

95-
/* The following methods are used for LoRa boards */
95+
/* The following methods are used for both LoRa and non-Lora boards */
9696
Property& ArduinoIoTCloudClass::addPropertyReal(bool& property, String name, int tag, Permission const permission)
9797
{
98-
return addPropertyReal(property, _thing_property_container, name, tag, permission);
98+
Property* p = new CloudWrapperBool(property);
99+
return addPropertyReal(*p, name, tag, permission);
99100
}
100101
Property& ArduinoIoTCloudClass::addPropertyReal(float& property, String name, int tag, Permission const permission)
101102
{
102-
return addPropertyReal(property, _thing_property_container, name, tag, permission);
103+
Property* p = new CloudWrapperFloat(property);
104+
return addPropertyReal(*p, name, tag, permission);
103105
}
104106
Property& ArduinoIoTCloudClass::addPropertyReal(int& property, String name, int tag, Permission const permission)
105107
{
106-
return addPropertyReal(property, _thing_property_container, name, tag, permission);
108+
Property* p = new CloudWrapperInt(property);
109+
return addPropertyReal(*p, name, tag, permission);
107110
}
108111
Property& ArduinoIoTCloudClass::addPropertyReal(unsigned int& property, String name, int tag, Permission const permission)
109112
{
110-
return addPropertyReal(property, _thing_property_container, name, tag, permission);
113+
Property* p = new CloudWrapperUnsignedInt(property);
114+
return addPropertyReal(*p, name, tag, permission);
111115
}
112116
Property& ArduinoIoTCloudClass::addPropertyReal(String& property, String name, int tag, Permission const permission)
113117
{
114-
return addPropertyReal(property, _thing_property_container, name, tag, permission);
118+
Property* p = new CloudWrapperString(property);
119+
return addPropertyReal(*p, name, tag, permission);
115120
}
116121
Property& ArduinoIoTCloudClass::addPropertyReal(Property& property, String name, int tag, Permission const permission)
117122
{
118-
return addPropertyReal(property, _thing_property_container, name, tag, permission);
123+
return addPropertyToContainer(_thing_property_container, property, name, permission, tag);
119124
}
120125

121126
/* The following methods are deprecated but still used for non-LoRa boards */
@@ -205,37 +210,3 @@ __attribute__((weak)) void setDebugMessageLevel(int const /* level */)
205210
/* do nothing */
206211
}
207212

208-
/******************************************************************************
209-
* PRIVATE MEMBER FUNCTIONS
210-
******************************************************************************/
211-
212-
/* The following methods are used for both LoRa and non-LoRa boards */
213-
Property& ArduinoIoTCloudClass::addPropertyReal(bool& property, PropertyContainer &prop_cont, String name, int tag, Permission const permission)
214-
{
215-
Property* p = new CloudWrapperBool(property);
216-
return addPropertyReal(*p, prop_cont, name, tag, permission);
217-
}
218-
Property& ArduinoIoTCloudClass::addPropertyReal(float& property, PropertyContainer &prop_cont, String name, int tag, Permission const permission)
219-
{
220-
Property* p = new CloudWrapperFloat(property);
221-
return addPropertyReal(*p, prop_cont, name, tag, permission);
222-
}
223-
Property& ArduinoIoTCloudClass::addPropertyReal(int& property, PropertyContainer &prop_cont, String name, int tag, Permission const permission)
224-
{
225-
Property* p = new CloudWrapperInt(property);
226-
return addPropertyReal(*p, prop_cont, name, tag, permission);
227-
}
228-
Property& ArduinoIoTCloudClass::addPropertyReal(unsigned int& property, PropertyContainer &prop_cont, String name, int tag, Permission const permission)
229-
{
230-
Property* p = new CloudWrapperUnsignedInt(property);
231-
return addPropertyReal(*p, prop_cont, name, tag, permission);
232-
}
233-
Property& ArduinoIoTCloudClass::addPropertyReal(String& property, PropertyContainer &prop_cont, String name, int tag, Permission const permission)
234-
{
235-
Property* p = new CloudWrapperString(property);
236-
return addPropertyReal(*p, prop_cont, name, tag, permission);
237-
}
238-
Property& ArduinoIoTCloudClass::addPropertyReal(Property& property, PropertyContainer &prop_cont, String name, int tag, Permission const permission)
239-
{
240-
return addPropertyToContainer(prop_cont, property, name, permission, tag);
241-
}

src/ArduinoIoTCloud.h

-7
Original file line numberDiff line numberDiff line change
@@ -169,13 +169,6 @@ class ArduinoIoTCloudClass
169169
String _device_id;
170170
OnCloudEventCallback _cloud_event_callback[3];
171171
bool _thing_id_outdated;
172-
173-
Property& addPropertyReal(Property& property, PropertyContainer &prop_cont, String name, int tag, Permission const permission);
174-
Property& addPropertyReal(bool& property, PropertyContainer &prop_cont, String name, int tag, Permission const permission);
175-
Property& addPropertyReal(float& property, PropertyContainer &prop_cont, String name, int tag, Permission const permission);
176-
Property& addPropertyReal(int& property, PropertyContainer &prop_cont, String name, int tag, Permission const permission);
177-
Property& addPropertyReal(unsigned int& property, PropertyContainer &prop_cont, String name, int tag, Permission const permission);
178-
Property& addPropertyReal(String& property, PropertyContainer &prop_cont, String name, int tag, Permission const permission);
179172
};
180173

181174
#ifdef HAS_TCP

0 commit comments

Comments
 (0)