You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hivemind.apache.org by kn...@apache.org on 2006/06/08 12:43:11 UTC

svn commit: r412716 - in /jakarta/hivemind/trunk: ./ framework/src/descriptor/META-INF/ framework/src/java/org/apache/hivemind/ant/ framework/src/java/org/apache/hivemind/impl/ framework/src/java/org/apache/hivemind/parse/ framework/src/java/org/apache...

Author: knut
Date: Thu Jun  8 03:43:09 2006
New Revision: 412716

URL: http://svn.apache.org/viewvc?rev=412716&view=rev
Log:
implementation for HIVEMIND-137 (new attribute "default" for <attribute> element) complete 
with test case, documentation, and hivedoc inclusion.

Added:
    jakarta/hivemind/trunk/framework/src/test/hivemind/test/rules/TestReadAttributeRule.java
Modified:
    jakarta/hivemind/trunk/framework/src/descriptor/META-INF/hivemodule.xml
    jakarta/hivemind/trunk/framework/src/java/org/apache/hivemind/ant/RegistrySerializer.java
    jakarta/hivemind/trunk/framework/src/java/org/apache/hivemind/impl/SchemaElement.java
    jakarta/hivemind/trunk/framework/src/java/org/apache/hivemind/impl/SchemaProcessorImpl.java
    jakarta/hivemind/trunk/framework/src/java/org/apache/hivemind/parse/DescriptorParser.java
    jakarta/hivemind/trunk/framework/src/java/org/apache/hivemind/parse/DescriptorParser.properties
    jakarta/hivemind/trunk/framework/src/java/org/apache/hivemind/schema/AttributeModel.java
    jakarta/hivemind/trunk/framework/src/java/org/apache/hivemind/schema/SchemaProcessor.java
    jakarta/hivemind/trunk/framework/src/java/org/apache/hivemind/schema/impl/AttributeModelImpl.java
    jakarta/hivemind/trunk/framework/src/java/org/apache/hivemind/schema/rules/PushAttributeRule.java
    jakarta/hivemind/trunk/framework/src/java/org/apache/hivemind/schema/rules/ReadAttributeRule.java
    jakarta/hivemind/trunk/framework/src/test/hivemind/test/parse/GenericModule.xml
    jakarta/hivemind/trunk/framework/src/test/hivemind/test/parse/TestDescriptorParser.java
    jakarta/hivemind/trunk/framework/src/test/hivemind/test/rules/TestPushAttributeRule.java
    jakarta/hivemind/trunk/framework/src/test/org/apache/hivemind/impl/TestSchemaProcessor.java
    jakarta/hivemind/trunk/hivebuild/hivedoc-xsl/hivemind.xsl
    jakarta/hivemind/trunk/pom.xml
    jakarta/hivemind/trunk/src/documentation/content/HiveMind-QuickReference.doc
    jakarta/hivemind/trunk/src/documentation/content/xdocs/descriptor.xml
    jakarta/hivemind/trunk/src/documentation/content/xdocs/rules.xml
    jakarta/hivemind/trunk/status.xml

Modified: jakarta/hivemind/trunk/framework/src/descriptor/META-INF/hivemodule.xml
URL: http://svn.apache.org/viewvc/jakarta/hivemind/trunk/framework/src/descriptor/META-INF/hivemodule.xml?rev=412716&r1=412715&r2=412716&view=diff
==============================================================================
--- jakarta/hivemind/trunk/framework/src/descriptor/META-INF/hivemodule.xml (original)
+++ jakarta/hivemind/trunk/framework/src/descriptor/META-INF/hivemodule.xml Thu Jun  8 03:43:09 2006
@@ -179,14 +179,14 @@
         <attribute name="initialize-method">The name of a public instance method (taking no parameters) to be invoked after the service is constructed.</attribute>
         <attribute name="error-handler-property">The name of a property to assign the module's ErrorHandler to.</attribute>
         <attribute name="class-resolver-property">The name of a property to assign the module's ClassResolver to.</attribute>
-        <attribute name="autowire-services" translator="boolean,default=true">If true (the default), the BuilderFactory will attempt to connect unclaimed properties to services.</attribute>
+        <attribute name="autowire-services" translator="boolean" default="true">If true, the BuilderFactory will attempt to connect unclaimed properties to services.</attribute>
         <attribute name="error-log-property">The name of a property to assign the service's ErrorLog to.</attribute>
         
         <rules>
           <create-object class="service.impl.BuilderParameter"/>
           <read-attribute attribute="class" property="className"/>
           <read-attribute attribute="initialize-method" property="initializeMethod"/>
-          <read-attribute attribute="autowire-services" property="autowireServices" skip-if-null="false"/>
+          <read-attribute attribute="autowire-services" property="autowireServices"/>
           <invoke-parent method="addElement"/>
           
           <create-object class="service.impl.BuilderMessagesFacet"/>

Modified: jakarta/hivemind/trunk/framework/src/java/org/apache/hivemind/ant/RegistrySerializer.java
URL: http://svn.apache.org/viewvc/jakarta/hivemind/trunk/framework/src/java/org/apache/hivemind/ant/RegistrySerializer.java?rev=412716&r1=412715&r2=412716&view=diff
==============================================================================
--- jakarta/hivemind/trunk/framework/src/java/org/apache/hivemind/ant/RegistrySerializer.java (original)
+++ jakarta/hivemind/trunk/framework/src/java/org/apache/hivemind/ant/RegistrySerializer.java Thu Jun  8 03:43:09 2006
@@ -702,6 +702,8 @@
             attribute.setAttribute("required", "true");
         if (am.isUnique())
             attribute.setAttribute("unique", "true");
+        if (am.getDefault() != null)
+            attribute.setAttribute("default", am.getDefault());
         if (!am.getTranslator().equals("smart"))
             attribute.setAttribute("translator", am.getTranslator());
 

Modified: jakarta/hivemind/trunk/framework/src/java/org/apache/hivemind/impl/SchemaElement.java
URL: http://svn.apache.org/viewvc/jakarta/hivemind/trunk/framework/src/java/org/apache/hivemind/impl/SchemaElement.java?rev=412716&r1=412715&r2=412716&view=diff
==============================================================================
--- jakarta/hivemind/trunk/framework/src/java/org/apache/hivemind/impl/SchemaElement.java (original)
+++ jakarta/hivemind/trunk/framework/src/java/org/apache/hivemind/impl/SchemaElement.java Thu Jun  8 03:43:09 2006
@@ -58,6 +58,8 @@
      */
     private Map _attributeTranslators = new HashMap();
 
+    private Map _attributeDefaults = new HashMap();
+
     /**
      * Map of Maps. The outer key is an attribute name string, this indicates that the attribute
      * values should be unique. Inner map is keyed on attribute value (as a string), the value is
@@ -97,6 +99,9 @@
                 _attributeValues.put(name, new HashMap());
             }
 
+            if (am.getDefault() != null)
+                _attributeDefaults.put(am.getName(), am.getDefault());
+
             _attributeTranslators.put(name, am.getTranslator());
         }
     }
@@ -269,6 +274,11 @@
         String translator = (String) _attributeTranslators.get(attributeName);
 
         return getTranslator(translator);
+    }
+
+    public String getAttributeDefault(String attributeName)
+    {
+        return (String) _attributeDefaults.get(attributeName);
     }
 
     public String getKeyAttribute()

Modified: jakarta/hivemind/trunk/framework/src/java/org/apache/hivemind/impl/SchemaProcessorImpl.java
URL: http://svn.apache.org/viewvc/jakarta/hivemind/trunk/framework/src/java/org/apache/hivemind/impl/SchemaProcessorImpl.java?rev=412716&r1=412715&r2=412716&view=diff
==============================================================================
--- jakarta/hivemind/trunk/framework/src/java/org/apache/hivemind/impl/SchemaProcessorImpl.java (original)
+++ jakarta/hivemind/trunk/framework/src/java/org/apache/hivemind/impl/SchemaProcessorImpl.java Thu Jun  8 03:43:09 2006
@@ -283,6 +283,11 @@
         return _activeElement.getContentTranslator();
     }
 
+    public String getAttributeDefault(String attributeName)
+    {
+        return _activeElement.getAttributeDefault(attributeName);
+    }
+
     public Translator getAttributeTranslator(String attributeName)
     {
         return _activeElement.getAttributeTranslator(attributeName);

Modified: jakarta/hivemind/trunk/framework/src/java/org/apache/hivemind/parse/DescriptorParser.java
URL: http://svn.apache.org/viewvc/jakarta/hivemind/trunk/framework/src/java/org/apache/hivemind/parse/DescriptorParser.java?rev=412716&r1=412715&r2=412716&view=diff
==============================================================================
--- jakarta/hivemind/trunk/framework/src/java/org/apache/hivemind/parse/DescriptorParser.java (original)
+++ jakarta/hivemind/trunk/framework/src/java/org/apache/hivemind/parse/DescriptorParser.java Thu Jun  8 03:43:09 2006
@@ -733,6 +733,7 @@
         checkAttributes();
 
         attributeModel.setName(getAttribute("name"));
+        attributeModel.setDefault(getAttribute("default"));
         attributeModel.setRequired(getBooleanAttribute("required", false));
         attributeModel.setUnique(getBooleanAttribute("unique", false));
         attributeModel.setTranslator(getAttribute("translator", "smart"));

Modified: jakarta/hivemind/trunk/framework/src/java/org/apache/hivemind/parse/DescriptorParser.properties
URL: http://svn.apache.org/viewvc/jakarta/hivemind/trunk/framework/src/java/org/apache/hivemind/parse/DescriptorParser.properties?rev=412716&r1=412715&r2=412716&view=diff
==============================================================================
--- jakarta/hivemind/trunk/framework/src/java/org/apache/hivemind/parse/DescriptorParser.properties (original)
+++ jakarta/hivemind/trunk/framework/src/java/org/apache/hivemind/parse/DescriptorParser.properties Thu Jun  8 03:43:09 2006
@@ -49,6 +49,7 @@
 required.attribute.required=false
 required.attribute.unique=false
 required.attribute.translator=false
+required.attribute.default=false
 
 required.create-object.class=true
 

Modified: jakarta/hivemind/trunk/framework/src/java/org/apache/hivemind/schema/AttributeModel.java
URL: http://svn.apache.org/viewvc/jakarta/hivemind/trunk/framework/src/java/org/apache/hivemind/schema/AttributeModel.java?rev=412716&r1=412715&r2=412716&view=diff
==============================================================================
--- jakarta/hivemind/trunk/framework/src/java/org/apache/hivemind/schema/AttributeModel.java (original)
+++ jakarta/hivemind/trunk/framework/src/java/org/apache/hivemind/schema/AttributeModel.java Thu Jun  8 03:43:09 2006
@@ -31,6 +31,13 @@
 	 */
 	public String getName();
 	
+    /**
+     * The default value for this attribute.
+     * 
+     * @since 1.2
+     */
+    public String getDefault();
+    
 	/**
 	 * Returns true if the attribute is required (must be specified).  Otherwise,
 	 * the attribute is optional and may be omitted.

Modified: jakarta/hivemind/trunk/framework/src/java/org/apache/hivemind/schema/SchemaProcessor.java
URL: http://svn.apache.org/viewvc/jakarta/hivemind/trunk/framework/src/java/org/apache/hivemind/schema/SchemaProcessor.java?rev=412716&r1=412715&r2=412716&view=diff
==============================================================================
--- jakarta/hivemind/trunk/framework/src/java/org/apache/hivemind/schema/SchemaProcessor.java (original)
+++ jakarta/hivemind/trunk/framework/src/java/org/apache/hivemind/schema/SchemaProcessor.java Thu Jun  8 03:43:09 2006
@@ -27,9 +27,8 @@
     /**
      * The SchemaProcessor is always the bottom (deepest) object on the stack. Top level objects
      * (contained by a schema, not another element) can use an
-     * {@link org.apache.hivemind.schema.rules.InvokeParentRule} to add themselves to the list
-     * of elements for the {@link org.apache.hivemind.internal.ConfigurationPoint} being
-     * constructed.
+     * {@link org.apache.hivemind.schema.rules.InvokeParentRule} to add themselves to the list of
+     * elements for the {@link org.apache.hivemind.internal.ConfigurationPoint} being constructed.
      */
     public void addElement(Object element);
 
@@ -91,6 +90,11 @@
      */
 
     public Translator getAttributeTranslator(String attributeName);
+
+    /**
+     * @since 1.2
+     */
+    public String getAttributeDefault(String attributeName);
 
     /**
      * Returns the named {@link org.apache.hivemind.schema.Translator}.

Modified: jakarta/hivemind/trunk/framework/src/java/org/apache/hivemind/schema/impl/AttributeModelImpl.java
URL: http://svn.apache.org/viewvc/jakarta/hivemind/trunk/framework/src/java/org/apache/hivemind/schema/impl/AttributeModelImpl.java?rev=412716&r1=412715&r2=412716&view=diff
==============================================================================
--- jakarta/hivemind/trunk/framework/src/java/org/apache/hivemind/schema/impl/AttributeModelImpl.java (original)
+++ jakarta/hivemind/trunk/framework/src/java/org/apache/hivemind/schema/impl/AttributeModelImpl.java Thu Jun  8 03:43:09 2006
@@ -19,14 +19,19 @@
 
 /**
  * Implementation of {@link org.apache.hivemind.schema.AttributeModel}.
- *
+ * 
  * @author Howard Lewis Ship
  */
 public final class AttributeModelImpl extends BaseAnnotationHolder implements AttributeModel
 {
     private String _name;
+
+    private String _default;
+
     private boolean _required;
-	private boolean _unique;
+
+    private boolean _unique;
+
     private String _translator;
 
     public String getName()
@@ -34,6 +39,11 @@
         return _name;
     }
 
+    public String getDefault()
+    {
+        return _default;
+    }
+
     public boolean isRequired()
     {
         return _required;
@@ -44,20 +54,25 @@
         _name = string;
     }
 
+    public void setDefault(String string)
+    {
+        _default = string;
+    }
+
     public void setRequired(boolean b)
     {
         _required = b;
     }
 
-	public void setUnique(boolean b)
-	{
-		_unique = b;
-	}
-
-	public boolean isUnique()
-	{
-		return _unique;
-	}
+    public void setUnique(boolean b)
+    {
+        _unique = b;
+    }
+
+    public boolean isUnique()
+    {
+        return _unique;
+    }
 
     public String getTranslator()
     {

Modified: jakarta/hivemind/trunk/framework/src/java/org/apache/hivemind/schema/rules/PushAttributeRule.java
URL: http://svn.apache.org/viewvc/jakarta/hivemind/trunk/framework/src/java/org/apache/hivemind/schema/rules/PushAttributeRule.java?rev=412716&r1=412715&r2=412716&view=diff
==============================================================================
--- jakarta/hivemind/trunk/framework/src/java/org/apache/hivemind/schema/rules/PushAttributeRule.java (original)
+++ jakarta/hivemind/trunk/framework/src/java/org/apache/hivemind/schema/rules/PushAttributeRule.java Thu Jun  8 03:43:09 2006
@@ -34,10 +34,14 @@
      */
     public void begin(SchemaProcessor processor, Element element)
     {
-        Translator t = processor.getAttributeTranslator(_attributeName);
-
         String attributeValue = element.getAttributeValue(_attributeName);
+
+        if (attributeValue == null)
+            attributeValue = processor.getAttributeDefault(_attributeName);
+
         String value = RuleUtils.processText(processor, element, attributeValue);
+
+        Translator t = processor.getAttributeTranslator(_attributeName);
 
         Object finalValue = t.translate(
                 processor.getContributingModule(),

Modified: jakarta/hivemind/trunk/framework/src/java/org/apache/hivemind/schema/rules/ReadAttributeRule.java
URL: http://svn.apache.org/viewvc/jakarta/hivemind/trunk/framework/src/java/org/apache/hivemind/schema/rules/ReadAttributeRule.java?rev=412716&r1=412715&r2=412716&view=diff
==============================================================================
--- jakarta/hivemind/trunk/framework/src/java/org/apache/hivemind/schema/rules/ReadAttributeRule.java (original)
+++ jakarta/hivemind/trunk/framework/src/java/org/apache/hivemind/schema/rules/ReadAttributeRule.java Thu Jun  8 03:43:09 2006
@@ -58,12 +58,12 @@
 
     public void begin(SchemaProcessor processor, Element element)
     {
-        String rawValue = element.getAttributeValue(_attributeName);
+        String value = getAttributeValue(processor, element);
 
-        if (rawValue == null && _skipIfNull)
+        if (value == null && _skipIfNull)
             return;
 
-        String value = RuleUtils.processText(processor, element, rawValue);
+        value = RuleUtils.processText(processor, element, value);
 
         Object target = processor.peek();
 
@@ -92,6 +92,13 @@
                     .getLocation(), ex);
         }
 
+    }
+
+    private String getAttributeValue(SchemaProcessor processor, Element element)
+    {
+        final String rawValue = element.getAttributeValue(_attributeName);
+
+        return rawValue == null ? processor.getAttributeDefault(_attributeName) : rawValue;
     }
 
     public String getAttributeName()

Modified: jakarta/hivemind/trunk/framework/src/test/hivemind/test/parse/GenericModule.xml
URL: http://svn.apache.org/viewvc/jakarta/hivemind/trunk/framework/src/test/hivemind/test/parse/GenericModule.xml?rev=412716&r1=412715&r2=412716&view=diff
==============================================================================
--- jakarta/hivemind/trunk/framework/src/test/hivemind/test/parse/GenericModule.xml (original)
+++ jakarta/hivemind/trunk/framework/src/test/hivemind/test/parse/GenericModule.xml Thu Jun  8 03:43:09 2006
@@ -25,7 +25,7 @@
 		<element name="foo1">
 			Identifies a foo that will be fnorded.
 			<attribute name="bar" required="true"/>
-			<attribute name="biff">
+			<attribute name="biff" default="glob">
 				Optional pointer to the biff glob thingey.
 			</attribute>
 			<rules>

Modified: jakarta/hivemind/trunk/framework/src/test/hivemind/test/parse/TestDescriptorParser.java
URL: http://svn.apache.org/viewvc/jakarta/hivemind/trunk/framework/src/test/hivemind/test/parse/TestDescriptorParser.java?rev=412716&r1=412715&r2=412716&view=diff
==============================================================================
--- jakarta/hivemind/trunk/framework/src/test/hivemind/test/parse/TestDescriptorParser.java (original)
+++ jakarta/hivemind/trunk/framework/src/test/hivemind/test/parse/TestDescriptorParser.java Thu Jun  8 03:43:09 2006
@@ -250,6 +250,7 @@
 
         am = (AttributeModel) al.get(1);
         assertEquals("biff", am.getName());
+        assertEquals("glob", am.getDefault());
 
         em = (ElementModel) l.get(1);
 

Modified: jakarta/hivemind/trunk/framework/src/test/hivemind/test/rules/TestPushAttributeRule.java
URL: http://svn.apache.org/viewvc/jakarta/hivemind/trunk/framework/src/test/hivemind/test/rules/TestPushAttributeRule.java?rev=412716&r1=412715&r2=412716&view=diff
==============================================================================
--- jakarta/hivemind/trunk/framework/src/test/hivemind/test/rules/TestPushAttributeRule.java (original)
+++ jakarta/hivemind/trunk/framework/src/test/hivemind/test/rules/TestPushAttributeRule.java Thu Jun  8 03:43:09 2006
@@ -43,15 +43,18 @@
 
         SchemaProcessor mockProcessor = (SchemaProcessor) control.getMock();
 
-        mockProcessor.getAttributeTranslator("fred");
-        control.setReturnValue(new NullTranslator());
-
         mockProcessor.getContributingModule();
 
         MockControl moduleControl = newControl(Module.class);
         Module mockModule = (Module) moduleControl.getMock();
 
-        control.setReturnValue(mockModule, 2);
+        control.setReturnValue(mockModule);
+
+        mockProcessor.getAttributeTranslator("fred");
+        control.setReturnValue(new NullTranslator());
+
+        mockProcessor.getContributingModule();
+        control.setReturnValue(mockModule);
 
         mockModule.expandSymbols("${flintstone}", element.getLocation());
         moduleControl.setReturnValue("FLINTSTONE");

Added: jakarta/hivemind/trunk/framework/src/test/hivemind/test/rules/TestReadAttributeRule.java
URL: http://svn.apache.org/viewvc/jakarta/hivemind/trunk/framework/src/test/hivemind/test/rules/TestReadAttributeRule.java?rev=412716&view=auto
==============================================================================
--- jakarta/hivemind/trunk/framework/src/test/hivemind/test/rules/TestReadAttributeRule.java (added)
+++ jakarta/hivemind/trunk/framework/src/test/hivemind/test/rules/TestReadAttributeRule.java Thu Jun  8 03:43:09 2006
@@ -0,0 +1,75 @@
+// Copyright 2005 The Apache Software Foundation
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//     http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package hivemind.test.rules;
+
+import hivemind.test.services.impl.StringHolderImpl;
+
+import org.apache.hivemind.impl.ElementImpl;
+import org.apache.hivemind.internal.Module;
+import org.apache.hivemind.schema.SchemaProcessor;
+import org.apache.hivemind.schema.rules.NullTranslator;
+import org.apache.hivemind.schema.rules.ReadAttributeRule;
+import org.apache.hivemind.test.HiveMindTestCase;
+import org.easymock.MockControl;
+
+public class TestReadAttributeRule extends HiveMindTestCase
+{
+    public void testReadAttributeRule()
+    {
+        ElementImpl element = new ElementImpl();
+        element.setElementName("myelement");
+
+        ReadAttributeRule rule = new ReadAttributeRule();
+
+        rule.setAttributeName("fred");
+        rule.setPropertyName("value");
+
+        MockControl control = newControl(SchemaProcessor.class);
+        SchemaProcessor mockProcessor = (SchemaProcessor) control.getMock();
+
+        mockProcessor.getAttributeDefault("fred");
+        control.setReturnValue("${flintstone}");
+
+        mockProcessor.getContributingModule();
+
+        MockControl moduleControl = newControl(Module.class);
+        Module mockModule = (Module) moduleControl.getMock();
+
+        control.setReturnValue(mockModule);
+
+        mockProcessor.peek();
+
+        StringHolderImpl target = new StringHolderImpl();
+        control.setReturnValue(target);
+
+        mockProcessor.getAttributeTranslator("fred");
+        control.setReturnValue(new NullTranslator());
+
+        mockProcessor.getContributingModule();
+        control.setReturnValue(mockModule);
+
+        mockModule.expandSymbols("${flintstone}", element.getLocation());
+        moduleControl.setReturnValue("FLINTSTONE");
+
+        replayControls();
+
+        rule.begin(mockProcessor, element);
+        rule.end(mockProcessor, element);
+
+        verifyControls();
+
+        assertEquals("FLINTSTONE", target.getValue());
+    }
+}

Modified: jakarta/hivemind/trunk/framework/src/test/org/apache/hivemind/impl/TestSchemaProcessor.java
URL: http://svn.apache.org/viewvc/jakarta/hivemind/trunk/framework/src/test/org/apache/hivemind/impl/TestSchemaProcessor.java?rev=412716&r1=412715&r2=412716&view=diff
==============================================================================
--- jakarta/hivemind/trunk/framework/src/test/org/apache/hivemind/impl/TestSchemaProcessor.java (original)
+++ jakarta/hivemind/trunk/framework/src/test/org/apache/hivemind/impl/TestSchemaProcessor.java Thu Jun  8 03:43:09 2006
@@ -442,4 +442,20 @@
         verifyControls();
     }
 
+    public void testGetAttributeDefault()
+    {
+        ElementModelImpl em = new ElementModelImpl();
+        em.setElementName("fred");
+
+        AttributeModelImpl am = new AttributeModelImpl();
+        am.setName("wife");
+        am.setDefault("wilma");
+
+        em.addAttributeModel(am);
+
+        SchemaElement sel = new SchemaElement(null, em);
+
+        assertEquals("wilma", sel.getAttributeDefault("wife"));
+        assertNull(sel.getAttributeDefault("husband"));
+    }
 }

Modified: jakarta/hivemind/trunk/hivebuild/hivedoc-xsl/hivemind.xsl
URL: http://svn.apache.org/viewvc/jakarta/hivemind/trunk/hivebuild/hivedoc-xsl/hivemind.xsl?rev=412716&r1=412715&r2=412716&view=diff
==============================================================================
--- jakarta/hivemind/trunk/hivebuild/hivedoc-xsl/hivemind.xsl (original)
+++ jakarta/hivemind/trunk/hivebuild/hivedoc-xsl/hivemind.xsl Thu Jun  8 03:43:09 2006
@@ -622,7 +622,7 @@
     -->
   <xsl:template match="attribute">
     <tr>
-      <th class="sub-id">Attribute <xsl:value-of select="@name"/> <xsl:if test="@required = 'true'"> (required) </xsl:if> <xsl:if test="@unique = 'true'"> (unique) </xsl:if> <!-- TODO: mark if key attribute --> </th>
+      <th class="sub-id">Attribute <xsl:value-of select="@name"/> <xsl:if test="@required = 'true'"> (required) </xsl:if> <xsl:if test="@unique = 'true'"> (unique) </xsl:if> <xsl:if test="@default"> (default="<xsl:value-of select="@default"/>") </xsl:if> <!-- TODO: mark if key attribute --> </th>
       <th> Translator: </th>
       <td>
         <xsl:choose>

Modified: jakarta/hivemind/trunk/pom.xml
URL: http://svn.apache.org/viewvc/jakarta/hivemind/trunk/pom.xml?rev=412716&r1=412715&r2=412716&view=diff
==============================================================================
--- jakarta/hivemind/trunk/pom.xml (original)
+++ jakarta/hivemind/trunk/pom.xml Thu Jun  8 03:43:09 2006
@@ -89,7 +89,7 @@
             <dependency>
                 <groupId>oro</groupId>
                 <artifactId>oro</artifactId>
-                <version>2.0.6</version>
+                <version>2.0.8</version>
             </dependency>
             <dependency>
                 <groupId>javax.servlet</groupId>

Modified: jakarta/hivemind/trunk/src/documentation/content/HiveMind-QuickReference.doc
URL: http://svn.apache.org/viewvc/jakarta/hivemind/trunk/src/documentation/content/HiveMind-QuickReference.doc?rev=412716&r1=412715&r2=412716&view=diff
==============================================================================
Binary files - no diff available.

Modified: jakarta/hivemind/trunk/src/documentation/content/xdocs/descriptor.xml
URL: http://svn.apache.org/viewvc/jakarta/hivemind/trunk/src/documentation/content/xdocs/descriptor.xml?rev=412716&r1=412715&r2=412716&view=diff
==============================================================================
--- jakarta/hivemind/trunk/src/documentation/content/xdocs/descriptor.xml (original)
+++ jakarta/hivemind/trunk/src/documentation/content/xdocs/descriptor.xml Thu Jun  8 03:43:09 2006
@@ -61,6 +61,15 @@
 						configuration element. The default is false.</td>
 				</tr>
 				<tr>
+					<td>default</td>
+					<td>string</td>
+					<td>no</td>
+					<td>Specifies the default value for this attribute. This value is used 
+						whenever this attribute has been omitted. Note that this default 
+						value is just like a specified value also subject to symbol expansion 
+						and translation.</td>
+				</tr>
+				<tr>
 					<td>unique</td>
 					<td>boolean</td>
 					<td>no</td>

Modified: jakarta/hivemind/trunk/src/documentation/content/xdocs/rules.xml
URL: http://svn.apache.org/viewvc/jakarta/hivemind/trunk/src/documentation/content/xdocs/rules.xml?rev=412716&r1=412715&r2=412716&view=diff
==============================================================================
--- jakarta/hivemind/trunk/src/documentation/content/xdocs/rules.xml (original)
+++ jakarta/hivemind/trunk/src/documentation/content/xdocs/rules.xml Thu Jun  8 03:43:09 2006
@@ -200,8 +200,11 @@
 						<td>skip-if-null</td>
 						<td>boolean</td>
 						<td>no</td>
-						<td>If "true" (the default), then an omitted attribute will be
-							ignored. If "false", the property will be updated regardless.</td>
+						<td>Represents the policy employed when the to be read attribute 
+						    was omitted and has no defined default value. If "true" (the 
+						    default), then an omitted attribute without	default value will 
+						    be ignored. If "false" the property will be updated with "null" 
+							or, if defined, the default value.</td>
 					</tr>
            <tr>
           <td>translator</td>

Modified: jakarta/hivemind/trunk/status.xml
URL: http://svn.apache.org/viewvc/jakarta/hivemind/trunk/status.xml?rev=412716&r1=412715&r2=412716&view=diff
==============================================================================
--- jakarta/hivemind/trunk/status.xml (original)
+++ jakarta/hivemind/trunk/status.xml Thu Jun  8 03:43:09 2006
@@ -14,11 +14,12 @@
    See the License for the specific language governing permissions and
    limitations under the License.
 -->
+
 <status>
   <developers>
-    <person name="Howard M. Lewis Ship" email="hlship@comcast.net" id="HLS"/>
-    <person name="Knut Wannheden" email="knut.wannheden@gmail.com" id="KW"/>
-    <person name="James Carman" email="james@carmanconsulting.com" id="JC"/>
+    <person name="Howard M. Lewis Ship" email="hlship@comcast.net" id="HLS" />
+    <person name="Knut Wannheden" email="knut.wannheden@gmail.com" id="KW" />
+    <person name="James Carman" email="james@carmanconsulting.com" id="JC" />
   </developers>
   <todo>
     <actions priority="Release 1.2">
@@ -36,13 +37,14 @@
       incompatible with proxies generated by outside means (CGLIB or Javassist)</action>
       <action type="fix" dev="JC" fixes-bug="HIVEMIND-169">Using JDK proxied service in 
       ServicePropertyFactory doesn't work</action>
+      <action type="add" dev="KW" fixes-bug="HIVEMIND-137">New &quot;default&quot; attribute for &lt;attribute&gt; element.</action>
     </release>
     <release version="1.1.1" date="Jan 28 2006">
       <action type="fix" dev="HLS" fixes-bug="HIVEMIND-162">Performance bottleneck with threaded
         services</action>
       <action type="fix" dev="HLS" fixes-bug="HIVEMIND-161">ThreadLocal object is never removed in
         ThreadEventNotifierImpl and holds the classloader</action>
-    </release>
+    </release>    
     <release version="1.1" date="Oct 26 2005">
       <action type="update" dev="HLS">Change project web site navigation</action>
       <action type="update" dev="HLS">Split up the dist-build target so that just documentation can
@@ -74,7 +76,7 @@
         java.util.List.</action>
       <action type="fix" dev="JC" fixes-bug="HIVEMIND-78" due-to="Paul Russell">Certain classloaders
         (AntClassLoader for example) cause NullPointerException in impl.MessageFormatter.</action>
-      <action type="add" dev="JC" fixes-bug="HIVEMIND-91">Add getModuleMessages() to Registry.</action>
+      <action type="add" dev="JC" fixes-bug="HIVEMIND-91" >Add getModuleMessages() to Registry.</action>
       <action type="fix" dev="JC" fixes-bug="HIVEMIND-105" due-to="Marcus Brito"
         >ServiceImplementationFactoryParameters.getFirstParameter should cope better with zero
         parameters.</action>
@@ -378,4 +380,4 @@
         the BuilderFactory's set-object element, and add integration tests. </action>
     </release>
   </changes>
-</status>
+</status>
\ No newline at end of file



---------------------------------------------------------------------
To unsubscribe, e-mail: hivemind-cvs-unsubscribe@jakarta.apache.org
For additional commands, e-mail: hivemind-cvs-help@jakarta.apache.org