You are viewing a plain text version of this content. The canonical link for it is here.
Posted to muse-commits@ws.apache.org by da...@apache.org on 2007/01/12 19:41:53 UTC

svn commit: r495683 - in /webservices/muse/trunk/modules/muse-wsrf-api/src/org/apache/muse/ws/resource/metadata: MetadataDescriptor.java OpenMetadataDescriptor.java WsrmdConstants.java

Author: danj
Date: Fri Jan 12 10:41:52 2007
New Revision: 495683

URL: http://svn.apache.org/viewvc?view=rev&rev=495683
Log:
Fix for MUSE-179 - made MetadataDescriptor objects mutable, but w/o making it possible to create non-compliant RMD docs.

WsrmdUtils contains a convenience method for turning one MetadataDescriptor object into a complete RMD MetadataDocument.

Modified:
    webservices/muse/trunk/modules/muse-wsrf-api/src/org/apache/muse/ws/resource/metadata/MetadataDescriptor.java
    webservices/muse/trunk/modules/muse-wsrf-api/src/org/apache/muse/ws/resource/metadata/OpenMetadataDescriptor.java
    webservices/muse/trunk/modules/muse-wsrf-api/src/org/apache/muse/ws/resource/metadata/WsrmdConstants.java

Modified: webservices/muse/trunk/modules/muse-wsrf-api/src/org/apache/muse/ws/resource/metadata/MetadataDescriptor.java
URL: http://svn.apache.org/viewvc/webservices/muse/trunk/modules/muse-wsrf-api/src/org/apache/muse/ws/resource/metadata/MetadataDescriptor.java?view=diff&rev=495683&r1=495682&r2=495683
==============================================================================
--- webservices/muse/trunk/modules/muse-wsrf-api/src/org/apache/muse/ws/resource/metadata/MetadataDescriptor.java (original)
+++ webservices/muse/trunk/modules/muse-wsrf-api/src/org/apache/muse/ws/resource/metadata/MetadataDescriptor.java Fri Jan 12 10:41:52 2007
@@ -40,6 +40,26 @@
 {
     /**
      * 
+     * Adds another wsrmd:Property element to the descriptor with the basic 
+     * metadata attributes required by the spec.
+     * 
+     * @param property
+     *        The name of the property this metadata refers to.
+     *        
+     * @param modifiability
+     *        Use WsrmdConstants.READ_ONLY or WsrmdConstants.READ_WRITE.
+     *        
+     * @param mutability
+     *        Use WsrmdConstants.CONSTANT, WsrmdConstants.APPENDABLE, or 
+     *        WsrmdConstants.MUTABLE.
+     *        
+     * @see WsrmdConstants
+     * 
+     */
+    void addProperty(QName property, String modifiability, String mutability);
+    
+    /**
+     * 
      * @param property
      * 
      * @return True if the property can be deleted (it is read-write and 
@@ -302,4 +322,44 @@
      *
      */
     boolean isValidValue(QName property, Object value);
+    
+    /**
+     * 
+     * Removes the wsrmd:Property element with the given name.
+     * 
+     * @param property
+     *        The name of the property to remove.
+     *        
+     */
+    void removeProperty(QName property);
+
+    /**
+     * 
+     * This method allows you to extend a wsrmd:Property definition and provide 
+     * application-specific metadata for a property.
+     *
+     * @param property
+     *        The wsrmd:Property element to which the new element should be added.
+     * 
+     * @param elementName
+     *        The name of the extended metadata item.
+     * 
+     * param  value
+     *        The value of the extended metadata item(may be null).
+     *
+     */
+    void setExtendedMetadata(QName property, QName elementName, String value);
+    
+    void setInitialValues(QName property, Collection values)
+        throws SoapFault;
+    
+    void setLowerBound(QName property, String value);
+    
+    void setStaticValues(QName property, Collection values)
+        throws SoapFault;
+    
+    void setUpperBound(QName property, String value);
+    
+    void setValidValues(QName property, Collection values)
+        throws SoapFault;
 }

Modified: webservices/muse/trunk/modules/muse-wsrf-api/src/org/apache/muse/ws/resource/metadata/OpenMetadataDescriptor.java
URL: http://svn.apache.org/viewvc/webservices/muse/trunk/modules/muse-wsrf-api/src/org/apache/muse/ws/resource/metadata/OpenMetadataDescriptor.java?view=diff&rev=495683&r1=495682&r2=495683
==============================================================================
--- webservices/muse/trunk/modules/muse-wsrf-api/src/org/apache/muse/ws/resource/metadata/OpenMetadataDescriptor.java (original)
+++ webservices/muse/trunk/modules/muse-wsrf-api/src/org/apache/muse/ws/resource/metadata/OpenMetadataDescriptor.java Fri Jan 12 10:41:52 2007
@@ -66,6 +66,11 @@
         // this constructor is only explicit so we can make it private
         //
     }
+
+    public void addProperty(QName property, String modifiability, String mutability)
+    {
+        throw new UnsupportedOperationException();
+    }
     
     /**
      *
@@ -270,5 +275,40 @@
     public Element toXML(Document doc)
     {
         return XmlUtils.createElement(doc, WsrmdConstants.DESCRIPTOR_QNAME);
+    }
+
+    public void removeProperty(QName property)
+    {
+        throw new UnsupportedOperationException();
+    }
+
+    public void setExtendedMetadata(QName property, QName elementName, String value)
+    {
+        throw new UnsupportedOperationException();
+    }
+
+    public void setInitialValues(QName property, Collection values)
+    {
+        throw new UnsupportedOperationException();
+    }
+    
+    public void setLowerBound(QName property, String value)
+    {
+        throw new UnsupportedOperationException();
+    }
+
+    public void setStaticValues(QName property, Collection values)
+    {
+        throw new UnsupportedOperationException();
+    }
+
+    public void setUpperBound(QName property, String value)
+    {
+        throw new UnsupportedOperationException();
+    }
+
+    public void setValidValues(QName property, Collection values)
+    {
+        throw new UnsupportedOperationException();
     }
 }

Modified: webservices/muse/trunk/modules/muse-wsrf-api/src/org/apache/muse/ws/resource/metadata/WsrmdConstants.java
URL: http://svn.apache.org/viewvc/webservices/muse/trunk/modules/muse-wsrf-api/src/org/apache/muse/ws/resource/metadata/WsrmdConstants.java?view=diff&rev=495683&r1=495682&r2=495683
==============================================================================
--- webservices/muse/trunk/modules/muse-wsrf-api/src/org/apache/muse/ws/resource/metadata/WsrmdConstants.java (original)
+++ webservices/muse/trunk/modules/muse-wsrf-api/src/org/apache/muse/ws/resource/metadata/WsrmdConstants.java Fri Jan 12 10:41:52 2007
@@ -42,6 +42,9 @@
     // Elements for RMD definitions
     //
     
+    public static final QName DEFINITIONS_QNAME = 
+        new QName(NAMESPACE_URI, "Definitions", PREFIX);
+    
     public static final QName DESCRIPTOR_QNAME = 
         new QName(NAMESPACE_URI, "MetadataDescriptor", PREFIX);
     



---------------------------------------------------------------------
To unsubscribe, e-mail: muse-commits-unsubscribe@ws.apache.org
For additional commands, e-mail: muse-commits-help@ws.apache.org