KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > objectweb > openccm > OpenCCM_DCI > cif > AssemblyManagerModelHomeImpl


1 /*====================================================================
2
3 OpenCCM: The Open CORBA Component Model Platform
4 Copyright (C) 2000-2002 USTL - LIFL - GOAL
5 Contact: openccm-team@objectweb.org
6
7 This library is free software; you can redistribute it and/or
8 modify it under the terms of the GNU Lesser General Public
9 License as published by the Free Software Foundation; either
10 version 2.1 of the License, or any later version.
11
12 This library is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 Lesser General Public License for more details.
16
17 You should have received a copy of the GNU Lesser General Public
18 License along with this library; if not, write to the Free Software
19 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
20 USA
21
22 Initial developer(s): Briclet Frederic
23 Contributor(s): ---------------------------------------------
24
25 ====================================================================*/

26
27 package org.objectweb.openccm.OpenCCM_DCI.cif;
28
29
30 /**
31  * This is the implementation of the OMG IDL3 demo3::Consumer component type.
32  *
33  * This class inherits from the skeleton
34  * generated by the OpenCCM's CIF to Java mapping generator.
35  *
36  * @author <a HREF="mailto:Frederic.Briclet@lifl.fr">Briclet Frederic</A>
37  */

38
39 public class AssemblyManagerModelHomeImpl
40         extends org.objectweb.openccm.OpenCCM_DCI.AssemblyManagerModelSessionComposition.
41                 AssemblyManagerModelHomeImpl
42 // implements CCM_NodeManagerHome
43
{
44     // ==================================================================
45
//
46
// Internal state.
47
//
48
// ==================================================================
49
/*Path refering to the xml file used to create the lasted assembly*/
50     private String JavaDoc xml_descriptor;
51
52     private byte[] componentArchive;
53
54     // ==================================================================
55
//
56
// Constructor.
57
//
58
// ==================================================================
59

60     /** The default constructor. */
61     public
62     AssemblyManagerModelHomeImpl()
63     {
64       super();
65     }
66     
67     // ==================================================================
68
//
69
// Internal methods.
70
//
71
// ==================================================================
72

73     // ==================================================================
74
//
75
// Public methods.
76
//
77
// ==================================================================
78

79     // ==================================================================
80
//
81
// Methods for creation of component segments.
82
//
83
// ==================================================================
84

85     /**
86      * Create an executor segment from its identifier.
87      *
88      * @param segid The executor segment identifier.
89      */

90     public org.omg.Components.ExecutorSegmentBase
91     create_executor_segment(int segid)
92     {
93         switch(segid)
94             {
95             case 0 :
96                 if(xml_descriptor!=null){
97                     String JavaDoc tmp=xml_descriptor;
98                     xml_descriptor=null;
99                     return new AssemblyManagerModelImpl(tmp);
100                 }
101                 else {
102                     byte []tmp=componentArchive;
103                     componentArchive=null;
104                     return new AssemblyManagerModelImpl(tmp);
105                 }
106                               
107                 
108             case org.objectweb.openccm.OpenCCM_DCI.
109                 AssemblyManagerModelSessionComposition.
110                 AssemblyInstanceManagementSeg._segment_id_value
111                 : return new AssemblyInstanceManagementSegImpl();
112                 
113             default:System.err.println("AssemblyManagerModel segmentation problem at creation!");
114                     return null;
115             }
116     
117     }
118
119     // ==================================================================
120
//
121
// Methods for the deployment.
122
//
123
// ==================================================================
124

125     /**
126      * This method is called by the OpenCCM Component Server
127      * to create a home instance.
128      */

129     public static org.omg.Components.HomeExecutorBase
130     create_home()
131     {
132         
133         return new AssemblyManagerModelHomeImpl();
134     }
135     
136     /**
137      * DCI ::create_assembly_model(xml_descriptor) factory method
138      * @return The create component
139      */

140     public org.omg.Components.EnterpriseComponent
141     create_assembly_model(String JavaDoc xml_descriptor)
142     {
143         this.xml_descriptor=xml_descriptor;
144         return create();
145     }
146     
147     public org.omg.Components.EnterpriseComponent
148     create_assembly_model_archive(byte[] componentArchive)
149     {
150         this.componentArchive=componentArchive;
151         return create();
152     }
153
154     /**
155      * static block to register the AssemblyManagerRemoved event
156      * which is used to manage the assembly manager removall.
157      */

158     static
159     {
160         // Required to register the Food valuetype factory to the ORB.
161
AssemblyManagerRemovedDefaultFactory.register();
162     }
163
164 }
165
Popular Tags