OneM2M / Mbed OS MQTTSN_AE_v1

Dependencies:   MQTTSN mbed-http

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers Enumeration.h Source File

Enumeration.h

00001 #include <string>
00002 
00003 int ty, op, cst, rsc;
00004 std::string resourceType, cseType, operation, content, response;
00005 bool RequestReachability;   
00006 std::string From, csi, api, poa, to, rqi, aei, rn; 
00007 
00008 bool CreateAE;
00009 
00010 void resource_type();
00011 void Operation_Type();
00012 void CSE_Type();
00013 
00014 void resource_type()
00015 {
00016     switch (ty)
00017     {
00018         case 1:
00019         resourceType = "accessControlPolicy";
00020         content = "m2m:acp";
00021         break;
00022         case 2:
00023         resourceType = "AE";
00024         content = "m2m:ae";
00025         break;
00026         case 3:
00027         resourceType = "container";
00028         content = "m2m:cnt";
00029         break;
00030         case 4:
00031         resourceType = "contentInstance";
00032         content = "m2m:cin";
00033         break;
00034         case 5:
00035         resourceType = "CSEBase";
00036         content = "m2m:cb";
00037         break;
00038         case 6:
00039         resourceType = "delivery";
00040         content = "m2m:dlv";
00041         break;
00042         case 7:
00043         resourceType = "eventConfig";
00044         content = "m2m:evcg";
00045         break;
00046         case 8:
00047         resourceType = "execInstance";
00048         content = "m2m:exin";
00049         break;
00050         case 9:
00051         resourceType = "group";
00052         content = "m2m:grp";
00053         break;
00054         case 10:
00055         resourceType = "locationPolicy";
00056         content = "m2m:lcp";
00057         break;
00058         case 11:
00059         resourceType = "m2mServiceSubscriptionProfile";
00060         content = "m2m:mssp";
00061         break;
00062         case 12:
00063         resourceType = "mgmtCmd";
00064         content = "m2m:mgc";
00065         break;
00066         case 13:
00067         resourceType = "mgmtObj";
00068         //content = "m2m:cnt";
00069         break;
00070         case 14:
00071         resourceType = "node";
00072         content = "m2m:nod";
00073         break;
00074         case 15:
00075         resourceType = "pollingChannel";
00076         content = "m2m:contenth";
00077         break;
00078         case 16:
00079         resourceType = "remoteCSE";
00080         content = "m2m:csr";
00081         break;
00082         case 17:
00083         resourceType = "request";
00084         content = "m2m:req";
00085         break;
00086         case 18:
00087         resourceType = "schedule";
00088         content = "m2m:sch";
00089         break;
00090         case 19:
00091         resourceType = "serviceSubscribedAppRule";
00092         content = "m2m:asar";
00093         break;
00094         case 20:
00095         resourceType = "serviceSubscribedNode";
00096         content = "m2m:svsn";
00097         break;
00098         case 21:
00099         resourceType = "statsCollect";
00100         content = "m2m:stcl";
00101         break;
00102         case 22:
00103         resourceType = "statsConfig";
00104         content = "m2m:stcg";
00105         break;
00106         case 23:
00107         resourceType = "subscription";
00108         content = "m2m:sub";
00109         break;
00110         case 10001:
00111         resourceType = "accessControlPolicyAnnc";
00112         content = "m2m:acpA";
00113         break;
00114         case 10002:
00115         resourceType = "AEAnnc";
00116         content = "m2m:aeA";
00117         break;
00118         case 10003:
00119         resourceType = "containerAnnc";
00120         content = "m2m:cntA";
00121         break;
00122         case 10004:
00123         resourceType = "contentInstanceAnnc";
00124         content = "m2m:cinA";
00125         break;
00126         case 10009:
00127         resourceType = "groupAnnc";
00128         content = "m2m:grpA";
00129         break;
00130         case 10010:
00131         resourceType = "locationPolicyAnnc";
00132         content = "m2m:lcpA";
00133         break;
00134         case 10013:
00135         resourceType = "mgmtObjAnnc";
00136         //content = "m2m:cnt";
00137         break;
00138         case 10014:
00139         resourceType = "nodeAnnc";
00140         content = "m2m:nodA";
00141         break;
00142         case 10016:
00143         resourceType = "remoteCSEAnnc";
00144         content = "m2m:csrA";
00145         break;
00146         case 10018:
00147         resourceType = "scheduleAnnc";
00148         content = "m2m:schA";
00149         break;
00150     }
00151 }
00152 void CSE_Type()
00153 {
00154     switch (cst)
00155     {
00156         case 1:
00157         cseType = "IN_CSE";
00158         break;
00159         case 2:
00160         cseType = "MN_CSE";
00161         break;
00162         case 3:
00163         cseType = "ASN_CSE";
00164         break;
00165     } 
00166 }  
00167 void Operation_Type() //CRUD+N
00168 {
00169     switch (op)
00170     {
00171         case 1:
00172         operation = "Create";
00173         break;
00174         case 2:
00175         operation = "Retrieve";
00176         break;
00177         case 3:
00178         operation = "Update";
00179         break;
00180         case 4:
00181         operation = "Delete";
00182         break;
00183         case 5:
00184         operation = "Notify";
00185         break;
00186     }
00187 }    
00188 void Response_Type()
00189 {
00190     switch (rsc)
00191     {
00192         //Informational response class
00193         case 1000:
00194         response = "ACCEPTED";
00195         break;
00196         case 1001:
00197         response = "ACCEPTED for nonBlockingRequestSynch";
00198         break;
00199         case 1002:
00200         response = "ACCEPTED for nonBlockingRequestAsynch";
00201         break;
00202         //specifies the RSCs for successful responses.
00203         case 2000:
00204         response = "OK";
00205         break;
00206         case 2001:
00207         response = "CREATED";
00208         break;
00209         case 2002:
00210         response = "DELETED";
00211         break;
00212         case 2004:
00213         response = "UPDATED";
00214         break;
00215         //RSCs for Originator error response class
00216         case 4000:
00217         response = "BAD_REQUEST";
00218         break;
00219         case 4001:
00220         response = "RELEASE_VERSION_NOT_SUPPORTED";
00221         break;
00222         case 4004:
00223         response = "NOT_FOUND";
00224         break;
00225         case 4005:
00226         response = "OPERATION_NOT_ALLOWED";
00227         break;
00228         case 4008:
00229         response = "REQUEST_TIMEOUT";
00230         break;
00231         case 4101:
00232         response = "SUBSCRIPTION_CREATOR_HAS_NO_PRIVILEGE";
00233         break;
00234         case 4102:
00235         response = "CONTENTS_UNACCEPTABLE";
00236         break;
00237         case 4103:
00238         response = "ORIGINATOR_HAS_NO_PRIVILEGE";
00239         break;
00240         case 4104:
00241         response = "GROUP_REQUEST_IDENTIFIER_EXISTS";
00242         break;
00243         case 4105:
00244         response = "CONFLICT";
00245         break;
00246         case 4106:
00247         response = "ORIGINATOR_HAS_NOT_REGISTERED";
00248         break;
00249         case 4107:
00250         response = "SECURITY_ASSOCIATION_REQUIRED";
00251         break;
00252         case 4108:
00253         response = "INVALID_CHILD_RESOURCE_TYPE";
00254         break;
00255         case 4109:
00256         response = "NO_MEMBERS";
00257         break;
00258         case 4110:
00259         response = "GROUP_MEMBER_TYPE_INCONSISTENT";
00260         break;
00261         case 4111:
00262         response = "ESPRIM_UNSUPPORTED_OPTION";
00263         break;
00264         case 4112:
00265         response = "ESPRIM_UNKNOWN_KEY_ID";
00266         break;
00267         case 4113:
00268         response = "ESPRIM_UNKNOWN_ORIG_RAND_ID";
00269         break;
00270         case 4114:
00271         response = "ESPRIM_UNKNOWN_RECV_RAND_ID";
00272         break;
00273         case 4115:
00274         response = "ESPRIM_BAD_MAC";
00275         break;
00276         case 4116:
00277         response = "ESPRIM_IMPERSONATION_ERROR";
00278         break;
00279         case 4117:
00280         response = "ORIGINATOR_HAS_ALREADY_REGISTERED";
00281         break;
00282         case 4118:
00283         response = "ONTOLOGY_NOT_AVAILABLE";
00284         break;
00285         case 4119:
00286         response = "LINKED_SEMANTICS_NOT_AVAILABLE";
00287         break;
00288         case 4120:
00289         response = "INVALID_SEMANTICS";
00290         break;
00291         case 4121:
00292         response = "MASHUP_MEMBER_NOT_FOUND";
00293         break;
00294         case 4122:
00295         response = "INVALID_TRIGGER_PURPOSE";
00296         break;
00297     }
00298 }