001: /*
002: * BEGIN_HEADER - DO NOT EDIT
003: *
004: * The contents of this file are subject to the terms
005: * of the Common Development and Distribution License
006: * (the "License"). You may not use this file except
007: * in compliance with the License.
008: *
009: * You can obtain a copy of the license at
010: * https://open-esb.dev.java.net/public/CDDLv1.0.html.
011: * See the License for the specific language governing
012: * permissions and limitations under the License.
013: *
014: * When distributing Covered Code, include this CDDL
015: * HEADER in each file and include the License file at
016: * https://open-esb.dev.java.net/public/CDDLv1.0.html.
017: * If applicable add the following below this CDDL HEADER,
018: * with the fields enclosed by brackets "[]" replaced with
019: * your own identifying information: Portions Copyright
020: * [year] [name of copyright owner]
021: */
022:
023: /*
024: * @(#)ComponentConfigMBean.java
025: * Copyright 2004-2007 Sun Microsystems, Inc. All Rights Reserved.
026: *
027: * END_HEADER - DO NOT EDIT
028: */
029: package testcomponent;
030:
031: import javax.management.MBeanException;
032: import javax.management.openmbean.CompositeData;
033: import javax.management.openmbean.CompositeType;
034: import javax.management.openmbean.TabularData;
035:
036: public interface ComponentConfigMBean {
037: /**
038: * Test method.
039: */
040: public String getComponentCustomInfo();
041:
042: /**
043: * Getters/Setters for attributes
044: */
045: public String getA();
046:
047: public void setA(String a);
048:
049: public String getB();
050:
051: public void setB(String b);
052:
053: public String getC();
054:
055: public void setC(String c);
056:
057: /**
058: * Get the CompositeType definition for the components application configuration
059: *
060: * @return the CompositeType for the components application configuration.
061: */
062: public CompositeType queryApplicationConfigurationType();
063:
064: /**
065: * Add an application configuration. The configuration name is a part of the CompositeData.
066: * The itemName for the configuration name is "configurationName" and the type is SimpleType.STRING
067: *
068: * @param name - configuration name, must match the value of the field "name" in the namedConfig
069: * @param appConfig - application configuration composite
070: * @throws MBeanException if the application configuration cannot be added.
071: * @return management message string which gives the status of the operation. For
072: * target=cluster, instance specific details are included.
073: */
074: public void addApplicationConfiguration(String name,
075: CompositeData appConfig) throws MBeanException;
076:
077: /**
078: * Delete an application configuration.
079: *
080: * @param name - identification of the application configuration to be deleted
081: * @throws MBeanException if the configuration cannot be deleted.
082: * @return management message string which gives the status of the operation. For
083: * target=cluster, instance specific details are included.
084: */
085: public void deleteApplicationConfiguration(String name)
086: throws MBeanException;
087:
088: /**
089: * Update a application configuration. The configuration name is a part of the CompositeData.
090: * The itemName for the configuration name is "configurationName" and the type is SimpleType.STRING
091: *
092: * @param name - configuration name, must match the value of the field "configurationName" in the appConfig
093: * @param appConfig - application configuration composite
094: * @throws MBeanException if there are errors encountered when updating the configuration.
095: * @return management message string which gives the status of the operation. For
096: * target=cluster, instance specific details are included.
097: */
098: public void setApplicationConfiguration(String name,
099: CompositeData appConfig) throws MBeanException;
100:
101: /**
102: * Get a Map of all application configurations for the component.
103: *
104: * @return a TabularData of all the application configurations for a
105: * component keyed by the configuration name.
106: */
107: public TabularData getApplicationConfigurations();
108:
109: /**
110: * This operation adds a new application variable. If a variable already exists with
111: * the same name as that specified then the operation fails.
112: *
113: * @param name - name of the application variable
114: * @param appVar - this is the application variable compoiste
115: * @throws MBeanException if an error occurs in adding the application variables to the
116: * component.
117: * @return management message string which gives the status of the operation. For
118: * target=cluster, instance specific details are included.
119: */
120: public void addApplicationVariable(String name, CompositeData appVar)
121: throws MBeanException;
122:
123: /**
124: * This operation sets an application variable. If a variable does not exist with
125: * the same name, its an error.
126: *
127: * @param name - name of the application variable
128: * @param appVar - this is the application variable compoiste to be updated.
129: * @throws MBeanException if one or more application variables cannot be deleted
130: * @return management message string which gives the status of the operation. For
131: * target=cluster, instance specific details are included.
132: */
133: public void setApplicationVariable(String name, CompositeData appVar)
134: throws MBeanException;
135:
136: /**
137: * This operation deletes an application variable, if a variable with the specified name does
138: * not exist, it's an error.
139: *
140: * @param name - name of the application variable
141: * @throws MBeanException on errors.
142: * @return management message string which gives the status of the operation. For
143: * target=cluster, instance specific details are included.
144: */
145: public void deleteApplicationVariable(String name)
146: throws MBeanException;
147:
148: /**
149: * Get the Application Variable set for a component.
150: *
151: * @return a TabularData which has all the applicationvariables set on the component.
152: */
153: public TabularData getApplicationVariables();
154:
155: /**
156: * Retrieves the component specific configuration schema.
157: *
158: * @return a String containing the configuration schema.
159: */
160: public String retrieveConfigurationDisplaySchema();
161:
162: /**
163: * Retrieves the component configuration metadata.
164: * The XML data conforms to the component
165: * configuration schema.
166: *
167: * @return a String containing the configuration metadata.
168: */
169: public String retrieveConfigurationDisplayData();
170:
171: }
|