KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > objectweb > proactive > core > body > MetaObjectFactory


1 /*
2 * ################################################################
3 *
4 * ProActive: The Java(TM) library for Parallel, Distributed,
5 * Concurrent computing with Security and Mobility
6 *
7 * Copyright (C) 1997-2002 INRIA/University of Nice-Sophia Antipolis
8 * Contact: proactive-support@inria.fr
9 *
10 * This library is free software; you can redistribute it and/or
11 * modify it under the terms of the GNU Lesser General Public
12 * License as published by the Free Software Foundation; either
13 * version 2.1 of the License, or any later version.
14 *
15 * This library is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
18 * Lesser General Public License for more details.
19 *
20 * You should have received a copy of the GNU Lesser General Public
21 * License along with this library; if not, write to the Free Software
22 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
23 * USA
24 *
25 * Initial developer(s): The ProActive Team
26 * http://www.inria.fr/oasis/ProActive/contacts.html
27 * Contributor(s):
28 *
29 * ################################################################
30 */

31 package org.objectweb.proactive.core.body;
32
33 import java.util.Hashtable JavaDoc;
34
35 import org.objectweb.proactive.core.body.migration.MigrationManagerFactory;
36 import org.objectweb.proactive.core.body.reply.ReplyReceiverFactory;
37 import org.objectweb.proactive.core.body.request.RequestFactory;
38 import org.objectweb.proactive.core.body.request.RequestQueueFactory;
39 import org.objectweb.proactive.core.body.request.RequestReceiverFactory;
40 import org.objectweb.proactive.core.component.identity.ProActiveComponentFactory;
41 import org.objectweb.proactive.core.group.ProActiveGroupManagerFactory;
42 import org.objectweb.proactive.core.util.ThreadStoreFactory;
43 import org.objectweb.proactive.ext.security.ProActiveSecurityManager;
44
45
46 /**
47  * <p>
48  * A class implementing this interface if able to provide instances of factories
49  * that can create MetaObjects used in the Body.
50  * </p>
51  *
52  * @author ProActive Team
53  * @version 1.0, 2002/05
54  * @since ProActive 0.9.2
55  */

56 public interface MetaObjectFactory {
57
58     /**
59      * Creates or reuses a RequestFactory
60      * @return a new or existing RequestFactory
61      * @see RequestFactory
62      */

63     public RequestFactory newRequestFactory();
64
65     /**
66      * Creates or reuses a ReplyReceiverFactory
67      * @return a new or existing ReplyReceiverFactory
68      * @see ReplyReceiverFactory
69      */

70     public ReplyReceiverFactory newReplyReceiverFactory();
71
72     /**
73      * Creates or reuses a RequestReceiverFactory
74      * @return a new or existing RequestReceiverFactory
75      * @see RequestReceiverFactory
76      */

77     public RequestReceiverFactory newRequestReceiverFactory();
78
79     /**
80      * Creates or reuses a RequestQueueFactory
81      * @return a new or existing RequestQueueFactory
82      * @see RequestQueueFactory
83      */

84     public RequestQueueFactory newRequestQueueFactory();
85
86     /**
87      * Creates or reuses a MigrationManagerFactory
88      * @return a new or existing MigrationManagerFactory
89      * @see MigrationManagerFactory
90      */

91     public MigrationManagerFactory newMigrationManagerFactory();
92
93     /**
94      * Creates or reuses a RemoteBodyFactory
95      * @return a new or existing RemoteBodyFactory
96      * @see RemoteBodyFactory
97      */

98     public RemoteBodyFactory newRemoteBodyFactory();
99
100     /**
101      * Creates or reuses a ThreadStoreFactory
102      * @return a new or existing ThreadStoreFactory
103      * @see ThreadStoreFactory
104      */

105     public ThreadStoreFactory newThreadStoreFactory();
106
107     // GROUP
108
/**
109      * Creates or reuses a ProActiveGroupManagerFactory
110      * @return a new ProActiveGroupManagerFactory
111      */

112     public ProActiveGroupManagerFactory newProActiveGroupManagerFactory();
113
114     /**
115      * creates a ProActiveComponentFactory
116      * @return a new ProActiveComponentFactory
117      */

118
119     // COMPONENTS
120
public ProActiveComponentFactory newComponentFactory();
121
122     /**
123      * accessor to the parameters of the factory (object-based configurations)
124      * @return the parameters of the factory
125      */

126
127     // COMPONENTS
128
public Hashtable JavaDoc getParameters();
129     
130     //SECURITY
131
/**
132      * Creates the ProActiveSecurityManager
133      * @return a new ProActiveSecurityManager
134      * @see ProActiveSecurityManager
135      */

136     public ProActiveSecurityManager getProActiveSecurityManager();
137
138     public void setProActiveSecurityManager(ProActiveSecurityManager psm);
139     
140 }
141
Popular Tags