package org.jboss.jmx.adaptor.model;
import javax.management.MBeanInfo;
import javax.management.ObjectName;
public class MBeanData implements Comparable
{
private ObjectName objectName;
private MBeanInfo metaData;
public MBeanData()
{
}
public MBeanData(ObjectName objectName, MBeanInfo metaData)
{
this.objectName = objectName;
this.metaData = metaData;
}
public ObjectName getObjectName()
{
return objectName;
}
public void setObjectName(ObjectName objectName)
{
this.objectName = objectName;
}
public MBeanInfo getMetaData()
{
return metaData;
}
public void setMetaData(MBeanInfo metaData)
{
this.metaData = metaData;
}
public String getName()
{
return objectName.toString();
}
public String getNameProperties()
{
return objectName.getCanonicalKeyPropertyListString();
}
public String getClassName()
{
return metaData.getClassName();
}
public int compareTo(Object o)
{
MBeanData md = (MBeanData) o;
String d1 = objectName.getDomain();
String d2 = md.objectName.getDomain();
int compare = d1.compareTo(d2);
if( compare == 0 )
{
String p1 = objectName.getCanonicalKeyPropertyListString();
String p2 = md.objectName.getCanonicalKeyPropertyListString();
compare = p1.compareTo(p2);
}
return compare;
}
public boolean equals(Object o)
{
if (o == null || (o instanceof MBeanData) == false)
return false;
if (this == o)
return true;
return (this.compareTo(o) == 0);
}
}