ManagementView changes
ccrouch Dec 21, 2006 1:53 PMInitial changes/questions...
1) Update org.jboss.deployers.spi.management.ManagementView to use
org.jboss.managed.api.ManagedObject
not
org.jboss.deployers.spi.management.ManagedObject
nor
org.jboss.annotation.management.ManagedObject
To do this we need a new release or snapshot of the Microcontainer right? So we can get the jboss-managed.jar (http://anonsvn.jboss.org/repos/jbossas/projects/microcontainer/trunk/managed/) into /thirdparty/jboss/microcontainer/lib.
Since /trunk is currently using the MC Beta from November:
Implementation-Version: 2.0.0.Beta (build: SVNTag=https://svn.jboss.org/repos/jbossas/projects/microcontainer/tags/JBossMC_2_0_0_Beta date= 200611172149)
I guess we need a Beta2?
2) Currently the only method on ManagementView is
public ManagedObject getView(ProfileKey key, String deploymentName, String version) throws NoSuchProfileException, NoSuchDeploymentException;
What does the version argument correspond to here?
3) I see two stubbed implementations of ManagementView, they also include this method:
public void setView(ProfileKey key, String deploymentName, HashMap<String, PropertyInfo> view) throws NoSuchProfileException, IOException
I think this should be changed to be
public void setView(ProfileKey key, String deploymentName, ManagedObject view) throws NoSuchProfileException, IOException
and put into the ManagementView interface.
4) We need the concept of a deployment type in order to support retrieving all ManagedObject's/deploymentName's of a particular type e.g. DataSource
either
public List<ManagedObject> getViews(ProfileKey key, DeploymentType deploy) throws NoSuchProfileException, IOException
or
public List<String> getDeploymentNames(ProfileKey key, DeploymentType deploy) throws NoSuchProfileException, IOException
5) If we're going to have deploymentName in the API for getView() and setView() then ManagedObject needs to be updated to support accessing the associated deploymentName, otherwise if we've got a list of ManagedObjects and we want to update one of them then we're not going to know what to pass into setView()
6) I didn't want to muddy the waters further but clearly we're going to need some concept of setView() representing new deployments, and also removeView() to undeploy/delete existing deployments. I figure we can get to those later, once we've got further on the Read/List api.
Thanks