00001 #include "fipa_acl.h"
00002
00003
00004 typedef struct fipa_acl_envelope_Received_s
00005 {
00006 struct fipa_url_s* received_by;
00007 struct fipa_url_s* received_from;
00008 struct fipa_DateTime_s* received_date;
00009 char* received_id;
00010 struct fipa_url_s* received_via;
00011 } fipa_acl_envelope_Received_t;
00012
00013 fipa_acl_envelope_Received_t* fipa_acl_envelope_Received_New(void);
00014 int fipa_acl_envelope_Received_Destroy(fipa_acl_envelope_Received_t* received);
00015 fipa_acl_envelope_Received_t* fipa_acl_envelope_Received_Copy(
00016 fipa_acl_envelope_Received_t* received);
00017
00018
00019 typedef struct fipa_acl_Param_s
00020 {
00021 struct fipa_agent_identifier_set_s* to;
00022 struct fipa_agent_identifier_s* from;
00023 char* comments;
00024 char* acl_representation;
00025 char* payload_length;
00026 char* payload_encoding;
00027 struct fipa_DateTime_s* date;
00028 struct fipa_agent_identifier_set_s* intended_receiver;
00029 struct fipa_acl_envelope_Received_s* received;
00030 } fipa_acl_Param_t;
00031
00032 fipa_acl_Param_t* fipa_acl_Param_New(void);
00033 int fipa_acl_Param_Destroy(fipa_acl_Param_t* param);
00034 fipa_acl_Param_t* fipa_acl_Param_Copy(fipa_acl_Param_t* param);
00035
00036
00037 typedef struct fipa_acl_envelope_s
00038 {
00039 int num_params;
00040 struct fipa_acl_Param_s** params;
00041 } fipa_acl_envelope_t;
00042 typedef fipa_acl_envelope_t* fipa_acl_envelope_p;
00043 fipa_acl_envelope_t* fipa_acl_envelope_New(void);
00044 int fipa_acl_envelope_Destroy(fipa_acl_envelope_t* envelope);
00045 fipa_acl_envelope_t* fipa_acl_envelope_Copy(fipa_acl_envelope_t* envelope);
00046
00047 int fipa_envelope_Parse(
00048 struct fipa_acl_envelope_s* envelope,
00049 const char* message);
00050
00051 int fipa_envelope_HandleEnvelope(
00052 struct fipa_acl_envelope_s* envelope,
00053 mxml_node_t* node);
00054
00055 int fipa_envelope_HandleParams(
00056 struct fipa_acl_envelope_s* envelope,
00057 mxml_node_t* node);
00058
00059 int fipa_envelope_HandleTo(
00060 struct fipa_acl_envelope_s* envelope,
00061 mxml_node_t* param_node,
00062 int cur_param);
00063
00064 int fipa_envelope_HandleFrom(
00065 struct fipa_acl_envelope_s* envelope,
00066 mxml_node_t* param_node,
00067 int cur_param);
00068
00069 int fipa_envelope_HandleComments(
00070 struct fipa_acl_envelope_s* envelope,
00071 mxml_node_t* param_node,
00072 int cur_param);
00073
00074 int fipa_envelope_HandleAclRepresentation(
00075 struct fipa_acl_envelope_s* envelope,
00076 mxml_node_t* param_node,
00077 int cur_param);
00078
00079 int fipa_envelope_HandlePayloadLength(
00080 struct fipa_acl_envelope_s* envelope,
00081 mxml_node_t* param_node,
00082 int cur_param);
00083
00084 int fipa_envelope_HandlePayloadEncoding(
00085 struct fipa_acl_envelope_s* envelope,
00086 mxml_node_t* param_node,
00087 int cur_param);
00088
00089 int fipa_envelope_HandleDate(
00090 struct fipa_acl_envelope_s* envelope,
00091 mxml_node_t* param_node,
00092 int cur_param);
00093
00094 int fipa_envelope_HandleIntendedReceiver(
00095 struct fipa_acl_envelope_s* envelope,
00096 mxml_node_t* param_node,
00097 int cur_param);
00098
00099 int fipa_envelope_HandleReceived(
00100 struct fipa_acl_envelope_s* envelope,
00101 mxml_node_t* param_node,
00102 int cur_param);
00103
00104 int fipa_envelope_ParseAgentIdentifier(
00105 struct fipa_agent_identifier_s** aid,
00106 mxml_node_t* agent_identifier_node
00107 );
00108
00109 int fipa_envelope_ParseAddresses(
00110 struct fipa_agent_identifier_s* aid,
00111 mxml_node_t* addresses_node);
00112
00113 int fipa_envelope_ParseResolvers(
00114 struct fipa_agent_identifier_s* aid,
00115 mxml_node_t* resolvers_node);
00116
00117 char* fipa_envelope_Compose(fipa_acl_message_t* fipa_acl);
00118
00119 mxml_node_t*
00120 fipa_envelope_Compose__envelope(fipa_acl_message_t* fipa_acl);
00121
00122 mxml_node_t*
00123 fipa_envelope_Compose__params(fipa_acl_message_t* fipa_acl);
00124
00125 mxml_node_t*
00126 fipa_envelope_Compose__to(fipa_acl_message_t* fipa_acl);
00127
00128 mxml_node_t*
00129 fipa_envelope_Compose__from(fipa_acl_message_t* fipa_acl);
00130
00131 mxml_node_t*
00132 fipa_envelope_Compose__acl_representation(fipa_acl_message_t* fipa_acl);
00133
00134 mxml_node_t*
00135 fipa_envelope_Compose__payload_encoding(fipa_acl_message_t* fipa_acl);
00136
00137 mxml_node_t*
00138 fipa_envelope_Compose__date(fipa_acl_message_t* fipa_acl);