Commit e38b1754f268b519e1791c3a723877ce6b254deb

Authored by totoro
1 parent 28ba2aae

add domain level for netservice

prelimirary code for Asterisk lib
asterisk/ami.anubis 0 → 100644
  1 +/*
  2 + * Created by PyramIDE.
  3 + * User: Totoro
  4 + * Date: 13/07/2013
  5 + * Time: 02:07
  6 + *
  7 + * To change this template use Tools | Options | Coding | Edit Standard Headers.
  8 + */
  9 +
  10 +read system/string.anubis
  11 +read tools/basis.anubis
  12 +read tools/connections.anubis
  13 +
  14 +read asterisk/ami_types.anubis
  15 +read asterisk/ami_commands.anubis
  16 +read web/CXM_http_get_common.anubis
  17 +
  18 +
  19 +
  20 + public define Result(
  21 +
  22 +define Maybe(One)
  23 + receive
  24 + (
  25 + Bool print_dump,
  26 + Connection conn
  27 + )=
  28 + //TODO find the header and content-lenght to get full length of answer
  29 +
  30 + if read(conn, 16384, 5) is
  31 + {
  32 + error then println("Read error");failure,
  33 + timeout then println("Read timeout");failure,
  34 + ok(ba) then
  35 + with ami_response = to_string(ba),
  36 + // typed_response = xml_rpc_get_response(xml_response),
  37 + if print_dump then
  38 +
  39 + success(println("=== ASTERISK SERVER answer ==="+crlf +"["+ ami_response + "]" ))
  40 + //println("=== XML_RPC Anubis interpretation ===");
  41 +
  42 + /* if typed_response is
  43 + {
  44 + failure then println("Interpretation error"),
  45 + success(result) then
  46 + if result is
  47 + {
  48 + ok(ok_res) then println(format_xml_rpc_parameters(ok_res,1)),
  49 + fault(fault) then println(format_xml_rpc_fault(fault,1))
  50 + }
  51 +
  52 + } */
  53 +
  54 + else success(unique)
  55 + }
  56 + .
  57 +
  58 +define Maybe(String)
  59 + _format_action
  60 + (
  61 + String so_far,
  62 + List(Key_value) values
  63 + )=
  64 + if values is
  65 + {
  66 + [] then success(so_far+crlf),
  67 + [h . t] then
  68 + if h is key_value(key, value) then
  69 + _format_action(so_far+key+": "+value+crlf, t)
  70 + }.
  71 +
  72 + /** Format the AMI action
  73 + *
  74 + */
  75 +
  76 +define Maybe(String)
  77 + format_action
  78 + (
  79 + AMI_Action action
  80 + )=
  81 + if action is action(action_type, values_list) then
  82 + _format_action( "Action: "+action_type+crlf,
  83 + //"ActionID: "+
  84 + values_list)
  85 + .
  86 +
  87 +
  88 +
  89 +public define Maybe(One)
  90 + send_action
  91 + (
  92 + Asterisk_client client,
  93 + AMI_Action action
  94 + )=
  95 + if client is asterisk_client(conn, _, auth) then
  96 +
  97 + //format the action into string
  98 + if format_action(action) is
  99 + {
  100 + failure then failure
  101 + success(action_str) then
  102 + //send the action trough the connection to Asterisk
  103 + println("=== ACTION ===");
  104 + print(action_str);
  105 + println("=== END ACTION ===");
  106 +
  107 + if write(conn, to_byte_array(action_str)) is
  108 + {
  109 + failure then failure,
  110 + success(_) then receive(true, conn)
  111 + }
  112 + }.
  113 +
  114 +public define Maybe(Asterisk_client)
  115 + asterisk_new_client
  116 + (
  117 + String server_name,
  118 + AMI_Auth auth
  119 + )=
  120 + if separate_name_port(server_name, 5038) is (name, server_port) then
  121 + //
  122 + // resolve server name and call 'https_get' with numeric server address:
  123 + //
  124 + with a = dns(name),
  125 + if a is ok(server_addr) then
  126 + println("TCP "+server_port+ " "+server_name);
  127 + if (Result(NetworkConnectError,RWStream))connect(server_addr, server_port) is
  128 + {
  129 + error(e) then failure,
  130 + ok(conn) then
  131 + if read_line(tcp(conn), 80, 10) is
  132 + {
  133 + error then failure,
  134 + timeout then failure,
  135 + eof then failure,
  136 + ok(str) then
  137 + println("=== ASTERISK SERVER answer ==="+crlf +"["+ str + "]" );
  138 + //to ensure that it is an Asterisk server we test the returned string
  139 + if start_with(to_lower(str), "asterisk call manager") then
  140 +
  141 + with client = asterisk_client(tcp(conn), var(0), auth),
  142 + if send_action(client, ami_login(auth)) is
  143 + {
  144 + failure then failure,
  145 + success(_) then success(client)
  146 + }
  147 + else
  148 + failure
  149 +
  150 + }
  151 +
  152 + }
  153 + else
  154 + failure.
  155 +
  156 +
  157 +global define One
  158 + ami_test
  159 + (
  160 + List(String) args
  161 + )=
  162 + if asterisk_new_client("192.168.3.20:5038", auth("admin","admin")) is
  163 + {
  164 + failure then println(" asterisk new client failure"),
  165 + success(ami_client) then unique
  166 + //forget(xml_rpc_client_execute(true, rpc_client, "/Settings", "list_domains", empty_param))
  167 + //forget(xml_rpc_client_execute(true, rpc_client, "/Settings", "delete_domain", parameters([parameter[string("amisdefontainebleau.org")]])))
  168 + //forget(xml_rpc_client_execute(true, rpc_client, "/Settings", "create_domain", empty_param))
  169 + }.
  170 +
asterisk/ami_commands.anubis 0 → 100644
  1 +/*
  2 + * Created by PyramIDE.
  3 + * User: Totoro
  4 + * Date: 14/07/2013
  5 + * Time: 01:34
  6 + *
  7 + * To change this template use Tools | Options | Coding | Edit Standard Headers.
  8 + */
  9 +
  10 +read asterisk/ami_types.anubis
  11 +
  12 +public define AMI_Action ami_login(String user, String password, Bool events) =
  13 + action("Login", [
  14 + key_value("Username",user),
  15 + key_value("Secret", password),
  16 + key_value("Events", if events then "on" else "off")
  17 + ]).
  18 +
  19 +public define AMI_Action ami_login(String user, String password)=
  20 + ami_login(user, password, true).
  21 +
  22 +public define AMI_Action ami_login(AMI_Auth ami_auth) =
  23 + if ami_auth is auth(user, password) then
  24 + ami_login(user, password, true).
  25 +
asterisk/ami_types.anubis 0 → 100644
  1 +/*
  2 + * Created by PyramIDE.
  3 + * User: Tototo
  4 + * Date: 13/07/2013
  5 + * Time: 02:19
  6 + *
  7 + * To change this template use Tools | Options | Coding | Edit Standard Headers.
  8 + */
  9 +
  10 +read tools/connections.anubis
  11 +
  12 +public type Key_value:
  13 + key_value(String key, String value).
  14 +
  15 +public type AMI_Response:
  16 + success(List(Key_value)),
  17 + error(List(Key_value)).
  18 +
  19 +public type AMI_Action:
  20 + action(String action_type, List(Key_value)).
  21 +
  22 +public type AMI_Event:
  23 + event(String event_type, List(Key_value)).
  24 +
  25 +public type AMI_Auth:
  26 + auth(String login, String pass).
  27 +
  28 +public type Asterisk_client:
  29 + asterisk_client(
  30 + Connection conn,
  31 + Var(Int) id,
  32 + AMI_Auth auth).
  33 +
net_services/CXM_net_services.anubis
@@ -48,17 +48,23 @@ define Maybe(NetService) @@ -48,17 +48,23 @@ define Maybe(NetService)
48 find_service 48 find_service
49 ( 49 (
50 List(NetService) services_list, 50 List(NetService) services_list,
51 - Word32 service_id,  
52 - Word32 service_version 51 + Word32 service_id,
  52 + Word32 service_version,
  53 + String domain
53 )= 54 )=
54 if services_list is 55 if services_list is
55 { 56 {
56 [] then failure, 57 [] then failure,
57 [h . t] then 58 [h . t] then
58 if h.id = service_id & h.version >=+ service_version then 59 if h.id = service_id & h.version >=+ service_version then
59 - success(h) 60 + if domain = "" then
  61 + success(h)
  62 + else if domain:h.domains then //this writing (a:b) means, is a belonging to b where b is list of type a
  63 + success(h)
  64 + else
  65 + find_service(t, service_id, service_version, domain)
60 else 66 else
61 - find_service(t, service_id, service_version) 67 + find_service(t, service_id, service_version, domain)
62 }. 68 }.
63 69
64 /** Check if the muscle message msg has the correct fields for requesting a net_services 70 /** Check if the muscle message msg has the correct fields for requesting a net_services
@@ -83,7 +89,13 @@ define Maybe(NetService) @@ -83,7 +89,13 @@ define Maybe(NetService)
83 if find_int32(msg, "version") is 89 if find_int32(msg, "version") is
84 { 90 {
85 failure then send_ACK_error(queue, _CXM_REQUEST_FOR_SERVICE);failure, 91 failure then send_ACK_error(queue, _CXM_REQUEST_FOR_SERVICE);failure,
86 - success(service_version) then find_service(net_services, service_id, service_version) 92 + success(service_version) then
  93 + //if DOMAIN field exists, this mean we want to target only this domain
  94 + if find_string(msg, "DOMAIN") is
  95 + {
  96 + failure then find_service(net_services, service_id, service_version,""),
  97 + success(domain) then find_service(net_services, service_id, service_version, domain)
  98 + }
87 } 99 }
88 } 100 }
89 101
@@ -91,7 +103,13 @@ define Maybe(NetService) @@ -91,7 +103,13 @@ define Maybe(NetService)
91 if find_int32(msg, "VERSION") is 103 if find_int32(msg, "VERSION") is
92 { 104 {
93 failure then send_ACK_error(queue, _CXM_REQUEST_FOR_SERVICE);failure, 105 failure then send_ACK_error(queue, _CXM_REQUEST_FOR_SERVICE);failure,
94 - success(service_version) then find_service(net_services, service_id, service_version) 106 + success(service_version) then
  107 + //if DOMAIN field exists, this mean we want to target only this domain
  108 + if find_string(msg, "DOMAIN") is
  109 + {
  110 + failure then find_service(net_services, service_id, service_version,""),
  111 + success(domain) then find_service(net_services, service_id, service_version, domain)
  112 + }
95 } 113 }
96 }. 114 }.
97 115
obj/unit_test.aproj.FileListAbsolute.txt 0 → 100644
  1 +D:\Documents and Settings\david\Mes documents\Calexium\icalldroid\calexium_lib\bin\Debug\xml_rpc.unit_test.adm
  2 +D:\Documents and Settings\david\Mes documents\Calexium\icalldroid\calexium_lib\obj\Debug\xml_rpc.unit_test.adm
unit_test.aproj 0 → 100644
  1 +<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  2 + <PropertyGroup>
  3 + <ProjectGuid>{F4319F29-A930-4597-A742-F7C7E6B701A2}</ProjectGuid>
  4 + <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
  5 + <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
  6 + <OutputType>Exe</OutputType>
  7 + <RootNamespace>xml_rpc.ut</RootNamespace>
  8 + <AssemblyName>xml_rpc.unit_test</AssemblyName>
  9 + <StartupObject>unit_test\xml_rpc.unit_test.anubis</StartupObject>
  10 + <MakeUsedFile>False</MakeUsedFile>
  11 + <MakeUnusedFile>False</MakeUnusedFile>
  12 + <AnubiscVerbosity>False</AnubiscVerbosity>
  13 + <AnubisPath>C:\Program Files\Anubis\</AnubisPath>
  14 + <IncludePaths>./</IncludePaths>
  15 + </PropertyGroup>
  16 + <PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
  17 + <OutputPath>bin\Debug\</OutputPath>
  18 + <DebugSymbols>True</DebugSymbols>
  19 + <DebugType>Full</DebugType>
  20 + <Optimize>False</Optimize>
  21 + </PropertyGroup>
  22 + <PropertyGroup Condition=" '$(Configuration)' == 'Release' ">
  23 + <OutputPath>bin\Release\</OutputPath>
  24 + <DebugSymbols>False</DebugSymbols>
  25 + <DebugType>None</DebugType>
  26 + <Optimize>True</Optimize>
  27 + <CommandLine>-tab:2 -pre -O</CommandLine>
  28 + </PropertyGroup>
  29 + <Import Project="$(AnubisBinPath)\Anubis.Build.targets" />
  30 + <ItemGroup>
  31 + <Folder Include="database" />
  32 + <Folder Include="library" />
  33 + <Folder Include="library\charset" />
  34 + <Folder Include="library\cipher" />
  35 + <Folder Include="library\converters" />
  36 + <Folder Include="library\data_base" />
  37 + <Folder Include="library\doc_tools" />
  38 + <Folder Include="library\examples" />
  39 + <Folder Include="library\examples\cryptography" />
  40 + <Folder Include="library\examples\graphism" />
  41 + <Folder Include="library\examples\graphism\image_samples" />
  42 + <Folder Include="library\examples\logic" />
  43 + <Folder Include="library\examples\mathematics" />
  44 + <Folder Include="library\examples\network" />
  45 + <Folder Include="library\examples\network\public" />
  46 + <Folder Include="library\graphism" />
  47 + <Folder Include="library\graphism\image_samples" />
  48 + <Folder Include="library\lexical_analysis" />
  49 + <Folder Include="library\locale" />
  50 + <Folder Include="library\mail" />
  51 + <Folder Include="library\network" />
  52 + <Folder Include="library\syntactic_analysis" />
  53 + <Folder Include="library\system" />
  54 + <Folder Include="library\system\parameter" />
  55 + <Folder Include="library\system_colors" />
  56 + <Folder Include="library\system_fonts" />
  57 + <Folder Include="library\test" />
  58 + <Folder Include="library\test\lexical_analysis" />
  59 + <Folder Include="library\test\predefined" />
  60 + <Folder Include="library\test\system" />
  61 + <Folder Include="library\test\tools" />
  62 + <Folder Include="library\tools" />
  63 + <Folder Include="library\version2" />
  64 + <Folder Include="library\web" />
  65 + <Folder Include="library\widgets3" />
  66 + <Folder Include="library\widgets4" />
  67 + <Folder Include="library\widgets4\images" />
  68 + <Folder Include="library\xml" />
  69 + <Folder Include="mail" />
  70 + <Folder Include="mail\lexers" />
  71 + <Folder Include="net_services" />
  72 + <Folder Include="net_services_protocols" />
  73 + <Folder Include="asterisk" />
  74 + <Folder Include="os_tools" />
  75 + <Folder Include="os_tools\linux" />
  76 + <Folder Include="os_tools\linux\config" />
  77 + <Folder Include="unit_test" />
  78 + <Folder Include="web" />
  79 + <Compile Include="asterisk\ami.anubis" />
  80 + <Compile Include="asterisk\ami_commands.anubis" />
  81 + <Compile Include="asterisk\ami_types.anubis" />
  82 + <Compile Include="database\alter_table.anubis" />
  83 + <Compile Include="database\db_types.anubis" />
  84 + <Compile Include="database\db_utils.anubis" />
  85 + <Compile Include="database\migration.anubis" />
  86 + <Compile Include="database\migration_common.anubis" />
  87 + <Compile Include="database\migration_common_sqlite3.anubis" />
  88 + <Compile Include="database\migration_sqlite3.anubis" />
  89 + <Compile Include="database\settings.anubis" />
  90 + <Compile Include="database\settings_sqlite3.anubis" />
  91 + <Compile Include="database\sqlite_foreign_key.anubis" />
  92 + <Compile Include="library\charset\charset_decoder.anubis" />
  93 + <Compile Include="library\charset\iso2022_jp_decoder.anubis" />
  94 + <Compile Include="library\cipher\base64.anubis" />
  95 + <Compile Include="library\compil_all.anubis" />
  96 + <Compile Include="library\compil_all_beta.anubis" />
  97 + <Compile Include="library\converters\_1_7_to_1_8.anubis" />
  98 + <Compile Include="library\data_base\alter_table.anubis" />
  99 + <Compile Include="library\data_base\db_tools.anubis" />
  100 + <Compile Include="library\data_base\db_types.anubis" />
  101 + <Compile Include="library\data_base\import_csv.anubis" />
  102 + <Compile Include="library\data_base\metaSQL.anubis" />
  103 + <Compile Include="library\data_base\metaSQL_test.anubis" />
  104 + <Compile Include="library\data_base\metaSQL_tools.anubis" />
  105 + <Compile Include="library\data_base\metaSQL_web.anubis" />
  106 + <Compile Include="library\data_base\mysql_client.anubis" />
  107 + <Compile Include="library\data_base\postgres_client.anubis" />
  108 + <Compile Include="library\data_base\postgres_graphic_interface.anubis" />
  109 + <Compile Include="library\data_base\read_csv_table.anubis" />
  110 + <Compile Include="library\data_base\sdbms.anubis" />
  111 + <Compile Include="library\data_base\sqlite.anubis" />
  112 + <Compile Include="library\data_base\sqlite_foreign_key.anubis" />
  113 + <Compile Include="library\data_base\theory.anubis" />
  114 + <Compile Include="library\doc_tools\latex.anubis" />
  115 + <Compile Include="library\doc_tools\make_doc.anubis" />
  116 + <Compile Include="library\doc_tools\maml.anubis" />
  117 + <Compile Include="library\examples\args.anubis" />
  118 + <Compile Include="library\examples\conditional_examples.anubis" />
  119 + <Compile Include="library\examples\cryptography\md5.anubis" />
  120 + <Compile Include="library\examples\cryptography\sha1.anubis" />
  121 + <Compile Include="library\examples\fibonacci.anubis" />
  122 + <Compile Include="library\examples\file_manager_example.anubis" />
  123 + <Compile Include="library\examples\graphism\diaporama.anubis" />
  124 + <Compile Include="library\examples\graphism\paint.anubis" />
  125 + <Compile Include="library\examples\graphism\paint2.anubis" />
  126 + <Compile Include="library\examples\graphism\show_image.anubis" />
  127 + <Compile Include="library\examples\graphism\try_window.anubis" />
  128 + <Compile Include="library\examples\hello.anubis" />
  129 + <Compile Include="library\examples\kbd.anubis" />
  130 + <Compile Include="library\examples\logic\church_integers.anubis" />
  131 + <Compile Include="library\examples\logic\peano.anubis" />
  132 + <Compile Include="library\examples\ls.anubis" />
  133 + <Compile Include="library\examples\mathematics\mandelbrot_set.anubis" />
  134 + <Compile Include="library\examples\mathematics\mandelbrot_set_old.anubis" />
  135 + <Compile Include="library\examples\mathematics\runge_kutta.anubis" />
  136 + <Compile Include="library\examples\mathematics\syracuse.anubis" />
  137 + <Compile Include="library\examples\merge_list.anubis" />
  138 + <Compile Include="library\examples\mkdir_test.anubis" />
  139 + <Compile Include="library\examples\network\client_browser_info.anubis" />
  140 + <Compile Include="library\examples\network\client_server.anubis" />
  141 + <Compile Include="library\examples\network\minimal_web_site.anubis" />
  142 + <Compile Include="library\examples\network\muscle_echo.anubis" />
  143 + <Compile Include="library\examples\network\port_scan.anubis" />
  144 + <Compile Include="library\examples\network\sntp_client.anubis" />
  145 + <Compile Include="library\examples\network\sokoban.anubis" />
  146 + <Compile Include="library\examples\network\try_dns.anubis" />
  147 + <Compile Include="library\examples\network\udp_client_server.anubis" />
  148 + <Compile Include="library\examples\network\upload.anubis" />
  149 + <Compile Include="library\examples\playing_with_functions.anubis" />
  150 + <Compile Include="library\examples\read_line_example.anubis" />
  151 + <Compile Include="library\examples\restart.anubis" />
  152 + <Compile Include="library\examples\saturate_example.anubis" />
  153 + <Compile Include="library\examples\test_web_site.anubis" />
  154 + <Compile Include="library\examples\try_now.anubis" />
  155 + <Compile Include="library\examples\try_protect.anubis" />
  156 + <Compile Include="library\examples\watt.anubis" />
  157 + <Compile Include="library\examples\_99_bottles_of_beer.anubis" />
  158 + <Compile Include="library\graphism\charts.anubis" />
  159 + <Compile Include="library\graphism\float_int32.anubis" />
  160 + <Compile Include="library\graphism\font_tools.anubis" />
  161 + <Compile Include="library\graphism\geometrical_figures.anubis" />
  162 + <Compile Include="library\graphism\gif.anubis" />
  163 + <Compile Include="library\graphism\image_tools.anubis" />
  164 + <Compile Include="library\graphism\jpeg.anubis" />
  165 + <Compile Include="library\graphism\jpeg_size.anubis" />
  166 + <Compile Include="library\graphism\lzw_gif.anubis" />
  167 + <Compile Include="library\graphism\png_size.anubis" />
  168 + <Compile Include="library\graphism\test_charts.anubis" />
  169 + <Compile Include="library\graphism\test_gfigures.anubis" />
  170 + <Compile Include="library\install_released_files.anubis" />
  171 + <Compile Include="library\lexical_analysis\fast_lexer.anubis" />
  172 + <Compile Include="library\lexical_analysis\fast_lexer_example_1.anubis" />
  173 + <Compile Include="library\lexical_analysis\fast_lexer_example_2.anubis" />
  174 + <Compile Include="library\lexical_analysis\lexer_maker_v2.anubis" />
  175 + <Compile Include="library\lexical_analysis\testing_fast_lexer.anubis" />
  176 + <Compile Include="library\lexical_analysis\xml.anubis" />
  177 + <Compile Include="library\locale\iso3166-1.anubis" />
  178 + <Compile Include="library\locale\L3.anubis" />
  179 + <Compile Include="library\locale\L3LanguageInfo.anubis" />
  180 + <Compile Include="library\mail\send_mail.anubis" />
  181 + <Compile Include="library\mail\smtp_server.anubis" />
  182 + <Compile Include="library\network\dns.anubis" />
  183 + <Compile Include="library\network\dns_tools.anubis" />
  184 + <Compile Include="library\network\sntp.anubis" />
  185 + <Compile Include="library\network\tools.anubis" />
  186 + <Compile Include="library\predefined.anubis" />
  187 + <Compile Include="library\syntactic_analysis\anubis_output.anubis" />
  188 + <Compile Include="library\syntactic_analysis\common.anubis" />
  189 + <Compile Include="library\syntactic_analysis\make_automaton.anubis" />
  190 + <Compile Include="library\syntactic_analysis\parser_generator.anubis" />
  191 + <Compile Include="library\syntactic_analysis\read_grammar.anubis" />
  192 + <Compile Include="library\syntactic_analysis\yacc_version.anubis" />
  193 + <Compile Include="library\system\bytearray.anubis" />
  194 + <Compile Include="library\system\convert.anubis" />
  195 + <Compile Include="library\system\data_io.anubis" />
  196 + <Compile Include="library\system\datetime.anubis" />
  197 + <Compile Include="library\system\files.anubis" />
  198 + <Compile Include="library\system\lists.anubis" />
  199 + <Compile Include="library\system\logger.anubis" />
  200 + <Compile Include="library\system\message_queue.anubis" />
  201 + <Compile Include="library\system\message_transceiver.anubis" />
  202 + <Compile Include="library\system\muscle.anubis" />
  203 + <Compile Include="library\system\parameter\inifile.anubis" />
  204 + <Compile Include="library\system\string.anubis" />
  205 + <Compile Include="library\system\test_logger.anubis" />
  206 + <Compile Include="library\system\types.anubis" />
  207 + <Compile Include="library\system_colors\rgb.anubis" />
  208 + <Compile Include="library\system_colors\system_colors.anubis" />
  209 + <Compile Include="library\system_fonts\draw_font.anubis" />
  210 + <Compile Include="library\system_fonts\font_table.anubis" />
  211 + <Compile Include="library\test\all_unit_test.anubis" />
  212 + <Compile Include="library\test\cp_test.anubis" />
  213 + <Compile Include="library\test\execute_capture.anubis" />
  214 + <Compile Include="library\test\inifile_test.anubis" />
  215 + <Compile Include="library\test\lexical_analysis\fast_lexer.ut.anubis" />
  216 + <Compile Include="library\test\lexical_analysis\low_level_fast_lexer_test.anubis" />
  217 + <Compile Include="library\test\locale_test.anubis" />
  218 + <Compile Include="library\test\Logger_test.anubis" />
  219 + <Compile Include="library\test\predefined\ByteArray.ut.anubis" />
  220 + <Compile Include="library\test\predefined\date_and_time.unit_test.anubis" />
  221 + <Compile Include="library\test\predefined\dbapi.unit_test.anubis" />
  222 + <Compile Include="library\test\predefined\decimal_scan.unit_test.anubis" />
  223 + <Compile Include="library\test\predefined\fast_lexer.unit_test.anubis" />
  224 + <Compile Include="library\test\predefined\file.ut.anubis" />
  225 + <Compile Include="library\test\predefined\Int.unit_test.anubis" />
  226 + <Compile Include="library\test\predefined\sqlite.obsolete.unit_test.anubis" />
  227 + <Compile Include="library\test\predefined\sqlite.unit_test.anubis" />
  228 + <Compile Include="library\test\serialize_test.anubis" />
  229 + <Compile Include="library\test\sqlite3_test.anubis" />
  230 + <Compile Include="library\test\SSLTest.anubis" />
  231 + <Compile Include="library\test\system\convert.unit_test.anubis" />
  232 + <Compile Include="library\test\system\files.unit_test.anubis" />
  233 + <Compile Include="library\test\system\Int.unit_test.anubis" />
  234 + <Compile Include="library\test\system\message_queue.unit_test.anubis" />
  235 + <Compile Include="library\test\system\message_transceiver.unit_test.anubis" />
  236 + <Compile Include="library\test\system\string.unit_test.anubis" />
  237 + <Compile Include="library\test\system\wordXX.unit_test.anubis" />
  238 + <Compile Include="library\test\TestItem.anubis" />
  239 + <Compile Include="library\test\tools\line_reader.ut.anubis" />
  240 + <Compile Include="library\test\tools\utf-8.unit_test.anubis" />
  241 + <Compile Include="library\test\vm_test.anubis" />
  242 + <Compile Include="library\tools\base64.anubis" />
  243 + <Compile Include="library\tools\basis.anubis" />
  244 + <Compile Include="library\tools\btree1.anubis" />
  245 + <Compile Include="library\tools\buffered_connection.anubis" />
  246 + <Compile Include="library\tools\cmd_line.anubis" />
  247 + <Compile Include="library\tools\connections.anubis" />
  248 + <Compile Include="library\tools\dump_file.anubis" />
  249 + <Compile Include="library\tools\explore_disk.anubis" />
  250 + <Compile Include="library\tools\findstring.anubis" />
  251 + <Compile Include="library\tools\hashtable.anubis" />
  252 + <Compile Include="library\tools\latex.anubis" />
  253 + <Compile Include="library\tools\line_reader.anubis" />
  254 + <Compile Include="library\tools\maml.anubis" />
  255 + <Compile Include="library\tools\maybefloat.anubis" />
  256 + <Compile Include="library\tools\printable_tree.anubis" />
  257 + <Compile Include="library\tools\read_table.anubis" />
  258 + <Compile Include="library\tools\safe_save_retrieve.anubis" />
  259 + <Compile Include="library\tools\saturate.anubis" />
  260 + <Compile Include="library\tools\schedul_task.anubis" />
  261 + <Compile Include="library\tools\sdbms.anubis" />
  262 + <Compile Include="library\tools\sdbms1.anubis" />
  263 + <Compile Include="library\tools\sdbms2.anubis" />
  264 + <Compile Include="library\tools\streams.anubis" />
  265 + <Compile Include="library\tools\tables.anubis" />
  266 + <Compile Include="library\tools\tools.anubis" />
  267 + <Compile Include="library\tools\unit_test.anubis" />
  268 + <Compile Include="library\tools\utf-8.anubis" />
  269 + <Compile Include="library\tools\words.anubis" />
  270 + <Compile Include="library\version2\diaconescu.anubis" />
  271 + <Compile Include="library\vm_test.anubis" />
  272 + <Compile Include="library\web\calculatrice.anubis" />
  273 + <Compile Include="library\web\common.anubis" />
  274 + <Compile Include="library\web\cookies.anubis" />
  275 + <Compile Include="library\web\counter.anubis" />
  276 + <Compile Include="library\web\file_manager.anubis" />
  277 + <Compile Include="library\web\generic_form.anubis" />
  278 + <Compile Include="library\web\generic_login.anubis" />
  279 + <Compile Include="library\web\generic_table.anubis" />
  280 + <Compile Include="library\web\html.anubis" />
  281 + <Compile Include="library\web\https_get.anubis" />
  282 + <Compile Include="library\web\http_get.anubis" />
  283 + <Compile Include="library\web\http_get_common.anubis" />
  284 + <Compile Include="library\web\http_server.anubis" />
  285 + <Compile Include="library\web\http_trace.anubis" />
  286 + <Compile Include="library\web\kernel.anubis" />
  287 + <Compile Include="library\web\making_a_web_site.anubis" />
  288 + <Compile Include="library\web\making_a_web_site2.anubis" />
  289 + <Compile Include="library\web\making_forms.anubis" />
  290 + <Compile Include="library\web\mime.anubis" />
  291 + <Compile Include="library\web\modules.anubis" />
  292 + <Compile Include="library\web\multihost_http_server.anubis" />
  293 + <Compile Include="library\web\read_html.anubis" />
  294 + <Compile Include="library\web\secure_action.anubis" />
  295 + <Compile Include="library\web\service_machine.anubis" />
  296 + <Compile Include="library\web\site_test.anubis" />
  297 + <Compile Include="library\web\torture_server.anubis" />
  298 + <Compile Include="library\web\to_html.anubis" />
  299 + <Compile Include="library\web\web_arg_encode.anubis" />
  300 + <Compile Include="library\widgets3\5_ht.anubis" />
  301 + <Compile Include="library\widgets3\box.anubis" />
  302 + <Compile Include="library\widgets3\bubble.anubis" />
  303 + <Compile Include="library\widgets3\button.anubis" />
  304 + <Compile Include="library\widgets3\characters_example.anubis" />
  305 + <Compile Include="library\widgets3\check_box.anubis" />
  306 + <Compile Include="library\widgets3\colors.anubis" />
  307 + <Compile Include="library\widgets3\desktop.anubis" />
  308 + <Compile Include="library\widgets3\desktop_example.anubis" />
  309 + <Compile Include="library\widgets3\drag_and_drop.anubis" />
  310 + <Compile Include="library\widgets3\generic_editor.anubis" />
  311 + <Compile Include="library\widgets3\generic_editor_example.anubis" />
  312 + <Compile Include="library\widgets3\host_window.anubis" />
  313 + <Compile Include="library\widgets3\hypertext.anubis" />
  314 + <Compile Include="library\widgets3\image.anubis" />
  315 + <Compile Include="library\widgets3\input.anubis" />
  316 + <Compile Include="library\widgets3\map_list.anubis" />
  317 + <Compile Include="library\widgets3\menus.anubis" />
  318 + <Compile Include="library\widgets3\menu_manager.anubis" />
  319 + <Compile Include="library\widgets3\o_essai.anubis" />
  320 + <Compile Include="library\widgets3\o_hypertext.anubis" />
  321 + <Compile Include="library\widgets3\resizer.anubis" />
  322 + <Compile Include="library\widgets3\scrollbar.anubis" />
  323 + <Compile Include="library\widgets3\simple_example.anubis" />
  324 + <Compile Include="library\widgets3\simple_window.anubis" />
  325 + <Compile Include="library\widgets3\space.anubis" />
  326 + <Compile Include="library\widgets3\table.anubis" />
  327 + <Compile Include="library\widgets3\table_example.anubis" />
  328 + <Compile Include="library\widgets3\text.anubis" />
  329 + <Compile Include="library\widgets3\tickets_holder.anubis" />
  330 + <Compile Include="library\widgets3\tools.anubis" />
  331 + <Compile Include="library\widgets3\trace.anubis" />
  332 + <Compile Include="library\widgets3\tree_editor.anubis" />
  333 + <Compile Include="library\widgets3\tree_editor_test.anubis" />
  334 + <Compile Include="library\widgets3\try_ht.anubis" />
  335 + <Compile Include="library\widgets3\ubiquity.anubis" />
  336 + <Compile Include="library\widgets3\variable.anubis" />
  337 + <Compile Include="library\widgets3\widget.anubis" />
  338 + <Compile Include="library\widgets3\window.anubis" />
  339 + <Compile Include="library\widgets4\background.anubis" />
  340 + <Compile Include="library\widgets4\box.anubis" />
  341 + <Compile Include="library\widgets4\bubble_manager.anubis" />
  342 + <Compile Include="library\widgets4\bubble_manager_test.anubis" />
  343 + <Compile Include="library\widgets4\button.anubis" />
  344 + <Compile Include="library\widgets4\check_box.anubis" />
  345 + <Compile Include="library\widgets4\desktop.anubis" />
  346 + <Compile Include="library\widgets4\desktop_example.anubis" />
  347 + <Compile Include="library\widgets4\detect_event.anubis" />
  348 + <Compile Include="library\widgets4\host_window.anubis" />
  349 + <Compile Include="library\widgets4\hypertext.anubis" />
  350 + <Compile Include="library\widgets4\hypertext_test.anubis" />
  351 + <Compile Include="library\widgets4\image.anubis" />
  352 + <Compile Include="library\widgets4\make_tartan_files.anubis" />
  353 + <Compile Include="library\widgets4\menus.anubis" />
  354 + <Compile Include="library\widgets4\menu_manager.anubis" />
  355 + <Compile Include="library\widgets4\menu_manager_test.anubis" />
  356 + <Compile Include="library\widgets4\mouse_tracker.anubis" />
  357 + <Compile Include="library\widgets4\radio_button.anubis" />
  358 + <Compile Include="library\widgets4\resizer.anubis" />
  359 + <Compile Include="library\widgets4\scrollbar.anubis" />
  360 + <Compile Include="library\widgets4\simple_window.anubis" />
  361 + <Compile Include="library\widgets4\space.anubis" />
  362 + <Compile Include="library\widgets4\table.anubis" />
  363 + <Compile Include="library\widgets4\tartan_generator.anubis" />
  364 + <Compile Include="library\widgets4\tartan_generator_demo.anubis" />
  365 + <Compile Include="library\widgets4\tests.anubis" />
  366 + <Compile Include="library\widgets4\text.anubis" />
  367 + <Compile Include="library\widgets4\text_input.anubis" />
  368 + <Compile Include="library\widgets4\ticket_keeper.anubis" />
  369 + <Compile Include="library\widgets4\tools.anubis" />
  370 + <Compile Include="library\widgets4\trace.anubis" />
  371 + <Compile Include="library\widgets4\tree_editor.anubis" />
  372 + <Compile Include="library\widgets4\tree_editor_test.anubis" />
  373 + <Compile Include="library\widgets4\tree_node.anubis" />
  374 + <Compile Include="library\widgets4\variable_widget.anubis" />
  375 + <Compile Include="library\widgets4\widget.anubis" />
  376 + <Compile Include="library\widgets4\widget_demo.anubis" />
  377 + <Compile Include="library\widgets4\widget_test.anubis" />
  378 + <Compile Include="library\widgets4\window.anubis" />
  379 + <Compile Include="library\widgets4\window_test.anubis" />
  380 + <Compile Include="library\xml\basic_xml_parser.anubis" />
  381 + <Compile Include="library\xml\xml_parser.apg.anubis" />
  382 + <Compile Include="mail\authentication.anubis" />
  383 + <Compile Include="mail\lexers\enhanced_status.anubis" />
  384 + <Compile Include="mail\send_mail.anubis" />
  385 + <Compile Include="mail\smtp_client.anubis" />
  386 + <Compile Include="mail\smtp_server_extensions.anubis" />
  387 + <Compile Include="net_services\CXM_generic_client.anubis" />
  388 + <Compile Include="net_services\CXM_generic_protocol.anubis" />
  389 + <Compile Include="net_services\CXM_net_services.anubis" />
  390 + <Compile Include="net_services_protocols\ftp_client.anubis" />
  391 + <Compile Include="net_services_protocols\logger_service.anubis" />
  392 + <Compile Include="net_services_protocols\pkg_updater_protocol.anubis" />
  393 + <Compile Include="os_tools\linux\config\network_interface_file.anubis" />
  394 + <Compile Include="unit_test\xml_rpc.unit_test.anubis" />
  395 + <Compile Include="web\CXM_xml_rpc.anubis" />
  396 + <Compile Include="web\CXM_xml_rpc_parser.anubis" />
  397 + <Compile Include="web\CXM_xml_rpc_types.anubis" />
  398 + <None Include="library\compile_all.inproj" />
  399 + <None Include="library\examples\determinism.anubis.c" />
  400 + <None Include="library\examples\for_loop.anubis.c" />
  401 + <None Include="library\examples\graphism\image_samples\cows.jpg" />
  402 + <None Include="library\examples\graphism\image_samples\farm.jpg" />
  403 + <None Include="library\examples\graphism\image_samples\fingers.jpg" />
  404 + <None Include="library\examples\graphism\image_samples\flowers.jpg" />
  405 + <None Include="library\examples\graphism\image_samples\mountain.jpg" />
  406 + <None Include="library\examples\graphism\image_samples\torrent.jpg" />
  407 + <None Include="library\examples\network\public\bambou.gif" />
  408 + <None Include="library\examples\network\public\bleuc.gif" />
  409 + <None Include="library\examples\network\public\bleuccloud.gif" />
  410 + <None Include="library\examples\network\public\boule.gif" />
  411 + <None Include="library\examples\network\public\button_prev.gif" />
  412 + <None Include="library\examples\network\public\cloud.gif" />
  413 + <None Include="library\examples\network\public\gboule.gif" />
  414 + <None Include="library\examples\network\public\gtete.gif" />
  415 + <None Include="library\examples\network\public\noir25.gif" />
  416 + <None Include="library\examples\network\public\noir25cloud.gif" />
  417 + <None Include="library\examples\network\public\tete.gif" />
  418 + <None Include="library\examples\OOCounter.anubis.cpp" />
  419 + <None Include="library\graphism\image_samples\cows.jpg" />
  420 + <None Include="library\graphism\image_samples\farm.jpg" />
  421 + <None Include="library\graphism\image_samples\fingers.jpg" />
  422 + <None Include="library\graphism\image_samples\flowers.jpg" />
  423 + <None Include="library\graphism\image_samples\mountain.jpg" />
  424 + <None Include="library\graphism\image_samples\torrent.jpg" />
  425 + <None Include="library\install_released_files.bat" />
  426 + <None Include="library\install_test.bat" />
  427 + <None Include="library\lexical_analysis\lexer_maker_v2_example.lexer" />
  428 + <None Include="library\lexical_analysis\test.xml" />
  429 + <None Include="library\locale\ISO-639-1 and ISO-639-2.txt" />
  430 + <None Include="library\locale\ISO-639-2_values_8bits.txt" />
  431 + <None Include="library\syntactic_analysis\calculator_example.apg" />
  432 + <None Include="library\syntactic_analysis\README" />
  433 + <None Include="library\system_fonts\courier_bold_o_10.sf" />
  434 + <None Include="library\system_fonts\courier_bold_o_12.sf" />
  435 + <None Include="library\system_fonts\courier_bold_o_14.sf" />
  436 + <None Include="library\system_fonts\courier_bold_o_18.sf" />
  437 + <None Include="library\system_fonts\courier_bold_o_24.sf" />
  438 + <None Include="library\system_fonts\courier_bold_o_8.sf" />
  439 + <None Include="library\system_fonts\courier_bold_r_10.sf" />
  440 + <None Include="library\system_fonts\courier_bold_r_12.sf" />
  441 + <None Include="library\system_fonts\courier_bold_r_14.sf" />
  442 + <None Include="library\system_fonts\courier_bold_r_18.sf" />
  443 + <None Include="library\system_fonts\courier_bold_r_24.sf" />
  444 + <None Include="library\system_fonts\courier_bold_r_8.sf" />
  445 + <None Include="library\system_fonts\courier_medium_o_10.sf" />
  446 + <None Include="library\system_fonts\courier_medium_o_12.sf" />
  447 + <None Include="library\system_fonts\courier_medium_o_14.sf" />
  448 + <None Include="library\system_fonts\courier_medium_o_18.sf" />
  449 + <None Include="library\system_fonts\courier_medium_o_24.sf" />
  450 + <None Include="library\system_fonts\courier_medium_o_8.sf" />
  451 + <None Include="library\system_fonts\courier_medium_r_10.sf" />
  452 + <None Include="library\system_fonts\courier_medium_r_12.sf" />
  453 + <None Include="library\system_fonts\courier_medium_r_14.sf" />
  454 + <None Include="library\system_fonts\courier_medium_r_18.sf" />
  455 + <None Include="library\system_fonts\courier_medium_r_24.sf" />
  456 + <None Include="library\system_fonts\courier_medium_r_8.sf" />
  457 + <None Include="library\system_fonts\helvetica_bold_o_10.sf" />
  458 + <None Include="library\system_fonts\helvetica_bold_o_12.sf" />
  459 + <None Include="library\system_fonts\helvetica_bold_o_14.sf" />
  460 + <None Include="library\system_fonts\helvetica_bold_o_18.sf" />
  461 + <None Include="library\system_fonts\helvetica_bold_o_24.sf" />
  462 + <None Include="library\system_fonts\helvetica_bold_o_8.sf" />
  463 + <None Include="library\system_fonts\helvetica_bold_r_10.sf" />
  464 + <None Include="library\system_fonts\helvetica_bold_r_12.sf" />
  465 + <None Include="library\system_fonts\helvetica_bold_r_14.sf" />
  466 + <None Include="library\system_fonts\helvetica_bold_r_18.sf" />
  467 + <None Include="library\system_fonts\helvetica_bold_r_24.sf" />
  468 + <None Include="library\system_fonts\helvetica_bold_r_8.sf" />
  469 + <None Include="library\system_fonts\helvetica_medium_o_10.sf" />
  470 + <None Include="library\system_fonts\helvetica_medium_o_12.sf" />
  471 + <None Include="library\system_fonts\helvetica_medium_o_14.sf" />
  472 + <None Include="library\system_fonts\helvetica_medium_o_18.sf" />
  473 + <None Include="library\system_fonts\helvetica_medium_o_24.sf" />
  474 + <None Include="library\system_fonts\helvetica_medium_o_8.sf" />
  475 + <None Include="library\system_fonts\helvetica_medium_r_10.sf" />
  476 + <None Include="library\system_fonts\helvetica_medium_r_12.sf" />
  477 + <None Include="library\system_fonts\helvetica_medium_r_14.sf" />
  478 + <None Include="library\system_fonts\helvetica_medium_r_18.sf" />
  479 + <None Include="library\system_fonts\helvetica_medium_r_24.sf" />
  480 + <None Include="library\system_fonts\helvetica_medium_r_8.sf" />
  481 + <None Include="library\system_fonts\times_bold_i_10.sf" />
  482 + <None Include="library\system_fonts\times_bold_i_12.sf" />
  483 + <None Include="library\system_fonts\times_bold_i_14.sf" />
  484 + <None Include="library\system_fonts\times_bold_i_18.sf" />
  485 + <None Include="library\system_fonts\times_bold_i_24.sf" />
  486 + <None Include="library\system_fonts\times_bold_i_8.sf" />
  487 + <None Include="library\system_fonts\times_bold_r_10.sf" />
  488 + <None Include="library\system_fonts\times_bold_r_12.sf" />
  489 + <None Include="library\system_fonts\times_bold_r_14.sf" />
  490 + <None Include="library\system_fonts\times_bold_r_18.sf" />
  491 + <None Include="library\system_fonts\times_bold_r_24.sf" />
  492 + <None Include="library\system_fonts\times_bold_r_8.sf" />
  493 + <None Include="library\system_fonts\times_medium_i_10.sf" />
  494 + <None Include="library\system_fonts\times_medium_i_12.sf" />
  495 + <None Include="library\system_fonts\times_medium_i_14.sf" />
  496 + <None Include="library\system_fonts\times_medium_i_18.sf" />
  497 + <None Include="library\system_fonts\times_medium_i_24.sf" />
  498 + <None Include="library\system_fonts\times_medium_i_8.sf" />
  499 + <None Include="library\system_fonts\times_medium_r_10.sf" />
  500 + <None Include="library\system_fonts\times_medium_r_12.sf" />
  501 + <None Include="library\system_fonts\times_medium_r_14.sf" />
  502 + <None Include="library\system_fonts\times_medium_r_18.sf" />
  503 + <None Include="library\system_fonts\times_medium_r_24.sf" />
  504 + <None Include="library\system_fonts\times_medium_r_8.sf" />
  505 + <None Include="library\test\Anubis UnitTest.aproj" />
  506 + <None Include="library\test\Anubis UnitTest.ide" />
  507 + <None Include="library\test\duplicate_letters.c" />
  508 + <None Include="library\tools\maml.anubis.1" />
  509 + <None Include="library\web\spacer.gif" />
  510 + <None Include="library\widgets3\alienor.jpg" />
  511 + <None Include="library\widgets3\alienor_aquitaine.jpg" />
  512 + <None Include="library\widgets3\anubis.jpg" />
  513 + <None Include="library\widgets3\flowers.jpg" />
  514 + <None Include="library\widgets3\gisant_alienor.jpg" />
  515 + <None Include="library\widgets3\gisant_alienor2.jpg" />
  516 + <None Include="library\widgets3\henri_2.jpg" />
  517 + <None Include="library\widgets3\john_lackland.jpg" />
  518 + <None Include="library\widgets3\old_sarum.jpg" />
  519 + <None Include="library\widgets3\richard.jpg" />
  520 + <None Include="library\widgets4\images\bidon.jpg" />
  521 + <None Include="library\widgets4\images\checked.jpg" />
  522 + <None Include="library\widgets4\images\cows.jpg" />
  523 + <None Include="library\widgets4\images\farm.jpg" />
  524 + <None Include="library\widgets4\images\fingers.jpg" />
  525 + <None Include="library\widgets4\images\flowers.jpg" />
  526 + <None Include="library\widgets4\images\mountain.jpg" />
  527 + <None Include="library\widgets4\images\not_checked.jpg" />
  528 + <None Include="library\widgets4\images\torrent.jpg" />
  529 + <None Include="library\xml\basic_xml_parser.anubis.bak" />
  530 + <None Include="library\xml\xml_parser.apg" />
  531 + </ItemGroup>
  532 +</Project>
0 \ No newline at end of file 533 \ No newline at end of file
unit_test.ide 0 → 100644
  1 +
  2 +Microsoft Visual Studio Solution File, Format Version 9.00
  3 +# Visual Studio 2005
  4 +# SharpDevelop 1.0.12.108
  5 +Project("{B6712916-30DE-4a3e-A54C-2A79AC984AEE}") = "unit_test", "unit_test.aproj", "{F4319F29-A930-4597-A742-F7C7E6B701A2}"
  6 +EndProject
  7 +Global
  8 + GlobalSection(SolutionConfigurationPlatforms) = preSolution
  9 + Debug|Any CPU = Debug|Any CPU
  10 + Release|Any CPU = Release|Any CPU
  11 + EndGlobalSection
  12 + GlobalSection(ProjectConfigurationPlatforms) = postSolution
  13 + {F4319F29-A930-4597-A742-F7C7E6B701A2}.Debug|Any CPU.Build.0 = Debug|Any CPU
  14 + {F4319F29-A930-4597-A742-F7C7E6B701A2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
  15 + {F4319F29-A930-4597-A742-F7C7E6B701A2}.Release|Any CPU.Build.0 = Release|Any CPU
  16 + {F4319F29-A930-4597-A742-F7C7E6B701A2}.Release|Any CPU.ActiveCfg = Release|Any CPU
  17 + EndGlobalSection
  18 +EndGlobal
unit_test/xml_rpc.unit_test.anubis 0 → 100644
  1 +
  2 +read web/CXM_xml_rpc.anubis
  3 +read asterisk/ami.anubis
  4 +