OneM2M / Mbed OS MQTTSN_AE_ESP_copy-1

Dependencies:   MQTTSN

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