/usr/share/ada/adainclude/aws/soap-wsdl-schema.ads is in libaws3.3.2.2-dev 17.2.2017-2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 | ------------------------------------------------------------------------------
-- Ada Web Server --
-- --
-- Copyright (C) 2015, AdaCore --
-- --
-- This library is free software; you can redistribute it and/or modify --
-- it under terms of the GNU General Public License as published by the --
-- Free Software Foundation; either version 3, or (at your option) any --
-- later version. This library is distributed in the hope that it will be --
-- useful, but WITHOUT ANY WARRANTY; without even the implied warranty of --
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. --
-- --
-- --
-- --
-- --
-- --
-- You should have received a copy of the GNU General Public License and --
-- a copy of the GCC Runtime Library Exception along with this program; --
-- see the files COPYING3 and COPYING.RUNTIME respectively. If not, see --
-- <http://www.gnu.org/licenses/>. --
-- --
-- --
-- --
-- --
-- --
-- --
-- --
------------------------------------------------------------------------------
pragma Ada_2012;
with AWS.Containers.Key_Value;
package SOAP.WSDL.Schema is
use type DOM.Core.Node;
type Binding_Style is (RPC, Document);
type Encoding_Style is (Encoded, Literal);
-- SOAP encoding style for the entities
subtype Definition is AWS.Containers.Key_Value.Map;
-- This map is used to map schema type-names and parameters to actual types
-- in AWS. This is needed when parting in literal encoding as the type
-- information is not given and must refer to the WSDL schema. Also in
-- document style binding the actual procedure to call is computed based
-- on the procedure call signature (the parameter names). For this, a
-- definition map record the following informations:
--
-- 1. The binding style for the schema (Document/RPC)
-- key: @binding.style
-- value: document/rpc
--
-- 2. The encoding style for each procedure's input and output messages
-- key: @<object>.encoding
-- value: encoded/literal
--
-- 3. The SOAP operation for each signature
-- key: @<param1>[:<param2>]
-- value: <SOAP procedure call name>
--
-- 4. The root type for each types in the schema
-- key: <type_name>
-- value: <xsd_type>
Empty : constant Definition;
procedure Set_Binding_Style
(Schema : in out Definition; Style : Binding_Style);
-- Set the actual binding style for the schema
function Get_Binding_Style (Schema : Definition) return Binding_Style;
-- Get the binding style for the schema
function Get_Encoding_Style
(Schema : Definition;
Operation : String) return Encoding_Style;
-- Returns the encoding-style for the given operation
procedure Set_Encoding_Style
(Schema : in out Definition;
Operation : String;
Encoding : Encoding_Style);
-- Set the encoding-style for the given operation
function Get_Call_For_Signature
(Schema : Definition;
Signature : String) return String;
-- Returns the SOAP operation for the given call signature
subtype URL is String;
procedure Register (Namespace : URL; Node : DOM.Core.Node) with
Pre => Node /= null,
Post => Contains (Namespace);
-- Register a Namespace (URL) for the given DOM tree
function Contains (Namespace : URL) return Boolean;
-- Returns True if the Namespace is known (has been registered)
procedure For_All
(Namespace : URL;
Process : not null access procedure (N : DOM.Core.Node));
-- Go through all mixed namespaces
private
Empty : constant Definition := AWS.Containers.Key_Value.Empty_Map;
end SOAP.WSDL.Schema;
|