[jboss-cvs] JBossAS SVN: r70009 - trunk/system-jmx/src/main/org/jboss/system/metadata.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Thu Feb 21 13:10:36 EST 2008
Author: anil.saldhana at jboss.com
Date: 2008-02-21 13:10:36 -0500 (Thu, 21 Feb 2008)
New Revision: 70009
Modified:
trunk/system-jmx/src/main/org/jboss/system/metadata/ServiceMetaData.java
Log:
JBAS-5243: addAttribute,addDependency api methods
Modified: trunk/system-jmx/src/main/org/jboss/system/metadata/ServiceMetaData.java
===================================================================
--- trunk/system-jmx/src/main/org/jboss/system/metadata/ServiceMetaData.java 2008-02-21 17:50:16 UTC (rev 70008)
+++ trunk/system-jmx/src/main/org/jboss/system/metadata/ServiceMetaData.java 2008-02-21 18:10:36 UTC (rev 70009)
@@ -22,9 +22,11 @@
package org.jboss.system.metadata;
import java.io.Serializable;
+import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Set;
+
import javax.management.ObjectName;
import org.jboss.dependency.spi.ControllerMode;
@@ -37,6 +39,7 @@
* ServiceMetaData.
*
* @author <a href="adrian at jboss.com">Adrian Brock</a>
+ * @author Anil.Saldhana at redhat.com
* @version $Revision: 1.1 $
*/
@ManagementObject
@@ -253,8 +256,52 @@
{
this.xmbeanDescriptor = xmbeanDescriptor;
}
+
+ /**
+ * Add an attribute
+ * @param serviceAttributeMetaData
+ */
+ public void addAttribute(ServiceAttributeMetaData serviceAttributeMetaData)
+ {
+ if(serviceAttributeMetaData == null)
+ throw new IllegalArgumentException("null serviceAttributeMetaData");
+ if(this.attributes.size() == 0)
+ this.attributes = new ArrayList<ServiceAttributeMetaData>();
+ if(this.attributes.contains(serviceAttributeMetaData) == false)
+ this.attributes.add(serviceAttributeMetaData);
+ }
/**
+ * Add an attribute
+ * @param attribute
+ */
+ public void addAttributes(List<ServiceAttributeMetaData> aAttributeList)
+ {
+ if(aAttributeList == null)
+ throw new IllegalArgumentException("Null attribute");
+ if(this.attributes.size() == 0)
+ this.attributes = aAttributeList;
+ else
+ {
+ //Avoid duplicates
+ for(ServiceAttributeMetaData serviceAttributeMetaData: aAttributeList)
+ {
+ addAttribute(serviceAttributeMetaData);
+ }
+ }
+ }
+
+ /**
+ * Remove a list of Attributes
+ * @param aAttributeList
+ */
+ public void removeAttributes(List<ServiceAttributeMetaData> aAttributeList)
+ {
+ this.attributes.removeAll(aAttributeList);
+ }
+
+
+ /**
* Get the attributes.
*
* @return the attributes.
@@ -287,6 +334,49 @@
}
/**
+ * Add dependency
+ * @param dependencyList
+ */
+ public void addDependency(ServiceDependencyMetaData serviceDependencyMetaData)
+ {
+ if(serviceDependencyMetaData == null)
+ throw new IllegalArgumentException("Null serviceDependencyMetaData");
+ if(this.dependencies.size() == 0)
+ this.dependencies = new ArrayList<ServiceDependencyMetaData>();
+
+ if(this.dependencies.contains(serviceDependencyMetaData) == false)
+ this.dependencies.add(serviceDependencyMetaData);
+ }
+
+ /**
+ * Add dependencies
+ * @param dependencyList
+ */
+ public void addDependencies(List<ServiceDependencyMetaData> dependencyList)
+ {
+ if(dependencyList == null)
+ throw new IllegalArgumentException("Null dependency");
+ if(this.dependencies.size() == 0)
+ this.dependencies = dependencyList;
+ else
+ {
+ for(ServiceDependencyMetaData serviceDependencyMetaData: dependencyList)
+ {
+ addDependency(serviceDependencyMetaData);
+ }
+ }
+ }
+
+ /**
+ * Remove a dependency
+ * @param dependency
+ */
+ public void removeDependency(ServiceDependencyMetaData dependency)
+ {
+ this.dependencies.remove(dependency);
+ }
+
+ /**
* Set the dependencies.
*
* @param dependencies the dependencies.
More information about the jboss-cvs-commits
mailing list