int main(void) { /* Create and initialise server session */ AwaServerSession * session = AwaServerSession_New(); /* Use default IPC configuration */ AwaServerSession_Connect(session); /* Create WRITE operation */ AwaServerWriteOperation * operation = AwaServerWriteOperation_New(session, AwaWriteMode_Update); /* * This example uses object /2 which is the Lwm2m ACL object. */ /* Create a new object instance by specifying the object instance path */ AwaServerWriteOperation_CreateObjectInstance(operation, "/2/10"); AwaServerWriteOperation_Perform(operation, CLIENT_ID, OPERATION_PERFORM_TIMEOUT); /* Operations must be freed after use */ AwaServerWriteOperation_Free(&operation); AwaServerSession_Disconnect(session); AwaServerSession_Free(&session); return 0; }
static int CreateTargets(const AwaServerSession * session, AwaServerWriteOperation * operation, const char * clientID, char ** targets, unsigned int numCreates) { int count = 0; int i = 0; // Handle object instance creates Debug("Filtering for Object Instance creates\n"); for (i = 0; i < numCreates; ++i) { Target * target = CreateTarget(targets[i]); if (Server_IsObjectTarget(session, target) || Server_IsObjectInstanceTarget(session, target)) { if (AwaServerWriteOperation_CreateObjectInstance(operation, target->Path) == AwaError_Success) { Verbose("Create %s\n", target->Path); ++count; } } else { // Skip it Debug("Skipping %s (%d)\n", targets[i], i); } FreeTarget(&target); } return count; }