EMMA Coverage Report (generated Sat Jul 01 16:38:45 PDT 2006)
[all classes][jade.jademx.mbean]

COVERAGE SUMMARY FOR SOURCE FILE [JadePlatformMBean.java]

nameclass, %method, %block, %line, %
JadePlatformMBean.java100% (1/1)100% (0/0)100% (0/0)100% (0/0)

COVERAGE BREAKDOWN BY CLASS AND METHOD

nameclass, %method, %block, %line, %
     
class JadePlatformMBean$1100% (1/1)100% (0/0)100% (0/0)100% (0/0)

1// jademx - JADE management using JMX
2// Copyright 2005 Caboodle Networks, Inc.
3//
4// This library is free software; you can redistribute it and/or
5// modify it under the terms of the GNU Lesser General Public
6// License as published by the Free Software Foundation; either
7// version 2.1 of the License, or (at your option) any later version.
8//
9// This library is distributed in the hope that it will be useful,
10// but WITHOUT ANY WARRANTY; without even the implied warranty of
11// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
12// Lesser General Public License for more details.
13//
14// You should have received a copy of the GNU Lesser General Public
15// License along with this library; if not, write to the Free Software
16// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
17 
18package jade.jademx.mbean;
19 
20import javax.management.ObjectName;
21 
22/** 
23 * MBean interface for a JADE platform. 
24 * @author David Bernstein, <a href="http://www.caboodlenetworks.com"
25 *  >Caboodle Networks, Inc.</a>
26 */
27public interface JadePlatformMBean extends JadeBaseMBean {
28    
29    /** JADE MBean type */
30    public final static String TYPE = "Platform";
31    
32    // ATTRIBUTES
33    
34    /** <code>Agents</code> attribute name */
35    public final static String ATTR_AGENTS = "Agents";
36    /** <code>AgentNames</code> attribute name */
37    public final static String ATTR_AGENT_NAMES = "AgentNames";
38    /** <code>AgentObjectNames</code> attribute name */
39    public final static String ATTR_AGENT_OBJECT_NAMES = "AgentObjectNames";
40    /** <code>PlatformName</code> attribute name */
41    public final static String ATTR_PLATFORM_NAME = "PlatformName";
42    /** <code>StateCode</code> attribute name */
43    public final static String ATTR_STATE_CODE = "StateCode";
44    /** <code>StateName</code> attribute name */
45    public final static String ATTR_STATE_NAME = "StateName";
46    /** <code>ThreadGroupName</code> attribute name */
47    public final static String ATTR_THREAD_GROUP_NAME = "ThreadGroupName";
48    /** <code>ThreadId</code> attribute name */
49    public final static String ATTR_THREAD_ID = "ThreadId";
50    /** <code>ThreadName</code> attribute name */
51    public final static String ATTR_THREAD_NAME = "ThreadName";
52    
53    // OPERATIONS
54    
55    /** <code>createNewAgent</code> operation */
56    public final static String OPER_CREATE_NEW_AGENT = "createNewAgent";
57    /** <code>createNewAgentReturnName</code> operation */
58    public final static String OPER_CREATE_NEW_AGENT_RETURN_NAME = 
59        "createNewAgentReturnName";
60    /** <code>getAgent</code> operation */
61    public final static String OPER_GET_AGENT = "getAgent";
62    /** <code>getAgentName</code> operation */
63    public final static String OPER_GET_AGENT_NAME = "getAgentName";
64    
65    /** <code>getAgentObjectName</code> operation */
66    public final static String OPER_GET_AGENT_OBJECT_NAME = 
67        "getAgentObjectName";
68    /** getAgentObjectName operation description */
69    public final static String OPER_GET_AGENT_OBJECT_NAME_DESC = 
70        "get ObjectName for given agent local name";
71    /** agentLocalName parameter type */
72    public final static String OPER_GET_AGENT_OBJECT_NAME_AGENT_LOCAL_NAME_PARM_TYPE = 
73        String.class.getName();
74    /** signature for a addVariable operation */
75    public final static String OPER_GET_AGENT_OBJECT_NAME_SIGNATURE[] = { 
76        OPER_GET_AGENT_OBJECT_NAME_AGENT_LOCAL_NAME_PARM_TYPE 
77    };
78    /** return type for addVariable operation */
79    public final static String OPER_GET_AGENT_OBJECT_NAME_TYPE = 
80        ObjectName.class.getName();
81    
82    /** <code>kill</code> operation */
83    public final static String OPER_KILL = "kill";
84    //    /** <code>resume</code> operation */
85    //    public final static String OPER_RESUME = "resume";
86    //    /** <code>start</code> operation */
87    //    public final static String OPER_START = "start";
88    //    /** <code>suspend</code> operation */
89    //    public final static String OPER_SUSPEND = "suspend";
90    
91    // NOTIFICATIONS
92    
93    /** born-agent notification */
94    public final static String NOTIFICATION_BORN_AGENT = 
95        "born-agent";
96    /** dead-agent notification */
97    public final static String NOTIFICATION_DEAD_AGENT = 
98        "dead-agent";
99    //    /** killed-platform notification */
100    //    public final static String NOTIFICATION_KILLED_PLATFORM = 
101    //        "killed-platform";
102    //    /** resumed-platform notification */
103    //    public final static String NOTIFICATION_RESUMED_PLATFORM = 
104    //        "resumed-platform";
105    //    /** started-platform notification */
106    //    public final static String NOTIFICATION_STARTED_PLATFORM = 
107    //        "started-platform";
108    //    /** suspended-platform notification */
109    //    public final static String NOTIFICATION_SUSPENDED_PLATFORM = 
110    //        "suspended-platform";
111    
112    
113    // ATTRIBUTES
114    
115    
116    /**
117     * Get agent proxy to local agent given its local name.
118     * @param localAgentName The short local name of the desired agent.
119     * @return ObjectName string for AgentMBean
120     * @throws JademxException If any probelms occur obtaining this proxy.
121     */
122    public JadeAgent getAgent(String localAgentName) throws JademxException; 
123    
124    /**
125     * Get name of agent proxy to local agent given its local name.
126     * @param localAgentName The short local name of the desired agent.
127     * @return ObjectName string for AgentMBean
128     * @throws JademxException If any probelms occur obtaining this proxy.
129     */
130    public String getAgentName(String localAgentName) throws JademxException; 
131    
132    /**
133     * Get ObjectName of agent MBean given its local name.
134     * @param localAgentName The short local name of the desired agent.
135     * @return ObjectName for AgentMBean
136     * @throws JademxException If any probelms occur obtaining this proxy.
137     */
138    public ObjectName getAgentObjectName(String localAgentName) throws JademxException; 
139    
140    /**
141     * return <code>JadeAgentMBeanDef</code>s of this platform.
142     * @return agent mbean names for platform
143     */
144    public JadeAgent[] getAgents();
145    
146    /**
147     * return names for <code>JadeAgentMBeanDef</code>s of this platform.
148     * @return agent mbean names for platform
149     */
150    public String[] getAgentNames();
151    
152    /**
153     * return <code>ObjectName</code>s for this platform's agents.
154     * @return agent mbean names for platform
155     */
156    public ObjectName[] getAgentObjectNames();
157    
158    
159    /**
160     * Get the name of the platform.
161     * @return String The platform name.
162     */
163    public String getPlatformName();
164    
165    // state is an object that has both name and integer code.
166    // expose it as two simple attributes
167    
168    /**
169     * return integer code for platform state
170     * @return integer code for platform state
171     */
172    public int getStateCode();
173 
174    /**
175     * return name of platform state
176     * @return name of platform state
177     */
178    public String getStateName();
179 
180    /**
181     * return thread group name
182     * @return thread group name
183     */
184    public String getThreadGroupName();
185 
186    /**
187     * return thread id
188     * @return thread id
189     */
190    public long getThreadId();
191 
192    /**
193     * return thread name
194     * @return thread name
195     */
196    public String getThreadName();
197 
198    
199    // OPERATIONS
200    
201    /**
202     * Create a new agent.
203     * @param nickname The name of the agent.
204     * @param className The class implementing the agent.
205     * @return ObjectName string for AgentMBean
206     * @param args The agents parameters - typically String[] from a configuration file.
207     * @return AgentController to enable control of the agent.
208     * @throws JademxException problems creating agent
209     */
210    public JadeAgent createNewAgent(String nickname, String className,
211            Object[] args) throws JademxException;
212    
213    /**
214     * Create a new agent.
215     * @param nickname The name of the agent.
216     * @param className The class implementing the agent.
217     * @return ObjectName string for AgentMBean
218     * @param args The agents parameters - typically String[] from a configuration file.
219     * @return AgentController to enable control of the agent.
220     * @throws JademxException problems creating agent
221     */
222    public String createNewAgentReturnName(String nickname, String className,
223            Object[] args) throws JademxException;
224    
225    /**
226     * Kill the agent platform. Kills all agents.
227     * @throws JademxException If any problems other than illegal state occur.
228     * @throws IllegalStateException If state is illegal for this activity.
229     */
230    public void kill() throws JademxException;
231    
232    //    /**
233    //     * Activate the agent platform. Next action may be suspend or kill.
234    //     * @throws JademxException a problem that isn't illegal state 
235    //     * @throws IllegalStateException state illegal for this activity.
236    //     */
237    //    public void resume() throws JademxException;
238    //    
239    //    /**
240    //     * Start the platform after its been initialized.
241    //     * @throws JademxException a problem that isn't illegal state 
242    //     * @throws IllegalStateException state illegal for this activity.
243    //     */
244    //    public void start() throws JademxException;
245    //
246    //    /**
247    //     * Suspend the agent platform. Next action may be resume or kill.
248    //     * @throws JademxException a problem that isn't illegal state 
249    //     * @throws IllegalStateException state illegal for this activity.
250    //     */
251    //    public void suspend() throws JademxException;
252 
253    
254}

[all classes][jade.jademx.mbean]
EMMA 2.0.5312 (C) Vladimir Roubtsov