You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@commons.apache.org by "Roberts George E (Ed) NPRI" <Ro...@Npt.NUWC.Navy.Mil> on 2002/11/08 14:17:35 UTC

[modeler] Modeler does not handle generic Descriptors (bug 14361)

Hi,

I have been looking at the modeler for a project I am working on... I communicated with Craig and he suggested that I bring our conversation to this email group... 

The modeler as it stands now does not have full compliance with the spec (unfortunately I have been reading JMX 1.1 instead of JMX 1.0.1 but I took a peek and it did not seem to change between those releases)... basically the problem is this... the specs says that one can add any number of descriptor fields that one wants, right now the DTD does not allow you to do that (only the standard ones) nor does the parser take care of that.  I have a DTD that I have posted as an attachment to bug 14361
that I want to purpose as a DTD that will take care of this problem... it will be backward compatible with the current DTD but I have deprecated some of the attribute entries

... there is a lot of metadata that I wanted added into the Descriptor for my class' parts and if one looks at the spec (even the 1.0.1 spec) there are Descriptor items such as for ModelMBeanAttributeInfo

The fields in the descriptor are defined, but not limited to, the following: 
 name           : attribute name  
 descriptorType : must be "attribute"   
 value          : current value for attribute 
 default        : default value for attribute 
 displayName    : name of attribute to be used in displays 
 getMethod      : name of operation descriptor for get method  
 setMethod      : name of operation descriptor for set method 
 protocolMap    : object which implements the ProtocolMap interface: map of protocol names and protocol hints 
 persistPolicy  : Update|OnTime|NoMoreOftenThan|Always|Never  
 persistPeriod  : seconds - frequency of persist cycle. Used when persistPolicy is"OnTime" or "NoMoreOftenThan".  
 currencyTimeLimit : how long value is valid, <0 never, =0 always, >0 seconds  
 lastUpdatedTimeStamp : when value was set  
 iterable       : T - object value supports Iterable interface, F - does not support Iterable interface       
 visibility     : 1-4 where 1: always visible 4: rarely visible  
 presentationString : xml formatted string to allow presentation of data 

there is no way in the present DTD to account for this information... one way that could be done is 
through attributes but then one could not have a general object as the field value allows... I think 
I have accounted for that in the DTD...

ed roberts

--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>


Re: [modeler] Modeler does not handle generic Descriptors (bug 14361)

Posted by Costin Manolache <cm...@yahoo.com>.
+1 in general. Modeler is missing several things - right now it
is 'good enough' for tomcat ( i.e. implements what we need ).

Regarding DTD extension - it is needed, however I would like to 
ask you to take a look first at other DTDs that solve 
the same problem ( like in jboss for example ). It would
be very nice to at least share the same tag names and
layout - and maybe support multiple descriptors.
Of course, the ideal would be a unique DTD used in
multiple products/projects - that would be the best
for users and everyone involved.

I'm also doing some enhancements to modeler - I'm mostly interested
in the persistence part ( saving the modified attributes ). A 
proposal was made on tomcat to use JNDI as an API for the data
storage ( it is already used to abstract the VFS ), and 
I'm trying to bridge the 2 - i.e. modeler to save changed
attributes in JNDI, plus jndi providers to abstract the
existing config files.

Costin



Roberts George E (Ed) NPRI wrote:

> Hi,
> 
> I have been looking at the modeler for a project I am working on... I
> communicated with Craig and he suggested that I bring our conversation to
> this email group...
> 
> The modeler as it stands now does not have full compliance with the spec
> (unfortunately I have been reading JMX 1.1 instead of JMX 1.0.1 but I took
> a peek and it did not seem to change between those releases)... basically
> the problem is this... the specs says that one can add any number of
> descriptor fields that one wants, right now the DTD does not allow you to
> do that (only the standard ones) nor does the parser take care of that.  I
> have a DTD that I have posted as an attachment to bug 14361 that I want to
> purpose as a DTD that will take care of this problem... it will be
> backward compatible with the current DTD but I have deprecated some of the
> attribute entries
> 
> ... there is a lot of metadata that I wanted added into the Descriptor for
> my class' parts and if one looks at the spec (even the 1.0.1 spec) there
> are Descriptor items such as for ModelMBeanAttributeInfo
> 
> The fields in the descriptor are defined, but not limited to, the
> following:
>  name           : attribute name
>  descriptorType : must be "attribute"
>  value          : current value for attribute
>  default        : default value for attribute
>  displayName    : name of attribute to be used in displays
>  getMethod      : name of operation descriptor for get method
>  setMethod      : name of operation descriptor for set method
>  protocolMap    : object which implements the ProtocolMap interface: map
>  of protocol names and protocol hints
>  persistPolicy  : Update|OnTime|NoMoreOftenThan|Always|Never
>  persistPeriod  : seconds - frequency of persist cycle. Used when
>  persistPolicy is"OnTime" or "NoMoreOftenThan". currencyTimeLimit : how
>  long value is valid, <0 never, =0 always, >0 seconds lastUpdatedTimeStamp
>  : when value was set
>  iterable       : T - object value supports Iterable interface, F - does
>  not support Iterable interface
>  visibility     : 1-4 where 1: always visible 4: rarely visible
>  presentationString : xml formatted string to allow presentation of data
> 
> there is no way in the present DTD to account for this information... one
> way that could be done is through attributes but then one could not have a
> general object as the field value allows... I think I have accounted for
> that in the DTD...
> 
> ed roberts




--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>