View Javadoc

1   package com.bradmcevoy.http;
2   
3   import java.util.Set;
4   
5   /**
6    * Extension to PropFindableResource which allows custom
7    * properties to be returned.
8    *
9    * See MultiNamespaceCustomPropertySource to support multiple namespaces
10   *
11   * @author brad
12   */
13  public interface CustomPropertyResource extends PropFindableResource {
14  
15      /**
16       * 
17       * @return - a list of all the properties of this namespace which exist
18       * on this resource
19       */
20      public Set<String> getAllPropertyNames();
21  
22      /**
23       * Return an accessor for the given property if it is supported or known. Note
24       * that this includes cases where the value of the property is null
25       *
26       * @param name
27       * @return - null if the property is unknown or not supported. Otherwise an
28       * accessor to the property
29       */
30      public CustomProperty getProperty(String name);
31  
32      /**
33       * Returns a URI used as a namespace for these properties.
34       * 
35       * @return
36       */
37      public String getNameSpaceURI();
38  
39  
40  
41  }