ocarina_lib_1.1.0_56e84ebe/examples/man_in_the_middle/repository.adb

  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
110
111
112
113
114
115
116
117
118
119
120
121
------------------------------------------------------------------------------
--                                                                          --
--                           OCARINA COMPONENTS                             --
--                                                                          --
--                           R E P O S I T O R Y                            --
--                                                                          --
--                                 B o d y                                  --
--                                                                          --
--               Copyright (C) 2006-2007, GET-Telecom Paris.                --
--                                                                          --
-- Ocarina  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 2, or (at your option) any      --
-- later version. Ocarina 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. See the GNU General --
-- Public License for more details. You should have received  a copy of the --
-- GNU General Public License distributed with Ocarina; see file COPYING.   --
-- If not, write to the Free Software Foundation, 51 Franklin Street, Fifth --
-- Floor, Boston, MA 02111-1301, USA.                                       --
--                                                                          --
-- As a special exception,  if other files  instantiate  generics from this --
-- unit, or you link  this unit with other files  to produce an executable, --
-- this  unit  does not  by itself cause  the resulting  executable to be   --
-- covered  by the  GNU  General  Public  License. This exception does not  --
-- however invalidate  any other reasons why the executable file might be   --
-- covered by the GNU Public License.                                       --
--                                                                          --
--                 Ocarina is maintained by the Ocarina team                --
--                       (ocarina-users@listes.enst.fr)                     --
--                                                                          --
------------------------------------------------------------------------------

with Ada.Text_IO;
with Ada.Characters.Handling;

package body Repository is

   use Partition.Message_PKG;

   ------------------
   -- Send_Message --
   ------------------

   procedure Send_Message
     (Msg_Out : out Partition.Message)
   is
      use Partition;
      use Ada.Text_IO;
   begin
      Msg_Out := To_Bounded_String ("The Initial MESSAGE");
      Put_Line ("Sent : " & To_String (Msg_Out));
   end Send_Message;

   ---------------------
   -- Receive_Message --
   ---------------------

   procedure Receive_Message
     (Msg_In : in Partition.Message)
   is
      use Partition;
      use Ada.Text_IO;
   begin
      Put_Line ("Received : " & To_String (Msg_In));
   end Receive_Message;

   ----------------------
   -- Transmit_Message --
   ----------------------

   procedure Transmit_Message
     (Msg_In : in Partition.Message;
      Msg_Out : out Partition.Message)
   is
      use Partition;
      use Ada.Text_IO;
   begin
      Msg_Out := Msg_In;
      Put_Line ("Transmitted : " & To_String (Msg_Out));
   end transmit_message;

   ------------------------
   -- Alterate_Message_1 --
   ------------------------

   procedure Alterate_Message_1
     (Msg_In : in Partition.Message;
      Msg_Out : out Partition.Message)
   is
      use Partition;
      use Ada.Text_IO;
      use Ada.Characters.Handling;
   begin
      Msg_Out := To_Bounded_String (To_Lower (To_String (Msg_In)));
      Put_Line ("Altered : "
                & To_String (Msg_In)
                & " to "
                & To_String (Msg_Out));
   end Alterate_Message_1;

   ------------------------
   -- Alterate_Message_2 --
   ------------------------

   procedure Alterate_Message_2
     (Msg_In : in Partition.Message;
      Msg_Out : out Partition.Message)
   is
      use Partition;
      use Ada.Text_IO;
      use Ada.Characters.Handling;
   begin
      Msg_Out := To_Bounded_String (To_Upper (To_String (Msg_In)));
      Put_Line ("Altered : "
                & To_String (Msg_In)
                & " to "
                & To_String (Msg_Out));
   end Alterate_Message_2;

end Repository;