Author: bimargulies Date: Fri Jun 20 17:17:27 2014 New Revision: 1604218 URL: http://svn.apache.org/r1604218 Log: DOXIASITETOOLS-90: site inheritance controllable * Added combine.self attribute to site descriptor, by analogy to plugin configuration. * exempted some batik from the enforcer; otherwise won't build.
Added: maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/src/test/resources/child-no-inheritance.xml - copied, changed from r1604205, maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/src/test/resources/child.xml Modified: maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/pom.xml maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/src/main/java/org/apache/maven/doxia/site/decoration/inheritance/DefaultDecorationModelInheritanceAssembler.java maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/src/main/mdo/decoration.mdo maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/src/test/java/org/apache/maven/doxia/site/decoration/inheritance/DecorationModelInheritenceAssemblerTest.java maven/doxia/doxia-sitetools/trunk/pom.xml Modified: maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/pom.xml URL: http://svn.apache.org/viewvc/maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/pom.xml?rev=1604218&r1=1604217&r2=1604218&view=diff ============================================================================== --- maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/pom.xml (original) +++ maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/pom.xml Fri Jun 20 17:17:27 2014 @@ -51,7 +51,7 @@ under the License. <models> <model>src/main/mdo/decoration.mdo</model> </models> - <version>1.4.0</version> + <version>1.6.0</version> <firstVersion>1.0.0</firstVersion> </configuration> <executions> Modified: maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/src/main/java/org/apache/maven/doxia/site/decoration/inheritance/DefaultDecorationModelInheritanceAssembler.java URL: http://svn.apache.org/viewvc/maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/src/main/java/org/apache/maven/doxia/site/decoration/inheritance/DefaultDecorationModelInheritanceAssembler.java?rev=1604218&r1=1604217&r2=1604218&view=diff ============================================================================== --- maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/src/main/java/org/apache/maven/doxia/site/decoration/inheritance/DefaultDecorationModelInheritanceAssembler.java (original) +++ maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/src/main/java/org/apache/maven/doxia/site/decoration/inheritance/DefaultDecorationModelInheritanceAssembler.java Fri Jun 20 17:17:27 2014 @@ -54,6 +54,13 @@ public class DefaultDecorationModelInher return; } + // do not inherit if descriptor forbids. + // we may push this down the schema later. + if ( "override".equals( child.getCombineSelf() ) ) + { + return; + } + URLContainer urlContainer = new URLContainer( parentBaseUrl, childBaseUrl ); if ( child.getBannerLeft() == null && parent.getBannerLeft() != null ) Modified: maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/src/main/mdo/decoration.mdo URL: http://svn.apache.org/viewvc/maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/src/main/mdo/decoration.mdo?rev=1604218&r1=1604217&r2=1604218&view=diff ============================================================================== --- maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/src/main/mdo/decoration.mdo (original) +++ maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/src/main/mdo/decoration.mdo Fri Jun 20 17:17:27 2014 @@ -19,7 +19,7 @@ specific language governing permissions under the License. --> -<model xmlns="http://modello.codehaus.org/MODELLO/1.1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://modello.codehaus.org/MODELLO/1.1.0 http://modello.codehaus.org/xsd/modello-1.1.0.xsd" +<model xmlns="http://modello.codehaus.org/MODELLO/1.4.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://modello.codehaus.org/MODELLO/1.4.1 http://modello.codehaus.org/xsd/modello-1.4.1.xsd" xml.namespace="http://maven.apache.org/DECORATION/${version}" xml.schemaLocation="http://maven.apache.org/xsd/decoration-${version}.xsd"> <id>decoration</id> @@ -55,6 +55,14 @@ under the License. <type>String</type> <identifier>true</identifier> </field> + <field xml.attribute="true" xml.tagName="combine.self"> + <description>Whether to inherit configuration from a parent project site descriptor.</description> + <name>combineSelf</name> + <version>1.6.0+</version> + <type>String</type> + <defaultValue>merge</defaultValue> + <identifier>true</identifier> + </field> <field> <name>bannerLeft</name> <description>Banner logo on the masthead of the site to the left.</description> Modified: maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/src/test/java/org/apache/maven/doxia/site/decoration/inheritance/DecorationModelInheritenceAssemblerTest.java URL: http://svn.apache.org/viewvc/maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/src/test/java/org/apache/maven/doxia/site/decoration/inheritance/DecorationModelInheritenceAssemblerTest.java?rev=1604218&r1=1604217&r2=1604218&view=diff ============================================================================== --- maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/src/test/java/org/apache/maven/doxia/site/decoration/inheritance/DecorationModelInheritenceAssemblerTest.java (original) +++ maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/src/test/java/org/apache/maven/doxia/site/decoration/inheritance/DecorationModelInheritenceAssemblerTest.java Fri Jun 20 17:17:27 2014 @@ -81,6 +81,22 @@ public class DecorationModelInheritenceA * @throws IOException * @throws XmlPullParserException */ + public void testSuppressedInheritence() + throws IOException, XmlPullParserException + { + DecorationModel unassembledChildModel = readModel( "child-no-inheritance.xml" ); + DecorationModel childModel = readModel( "child-no-inheritance.xml" ); + DecorationModel parentModel = readModel( "parent.xml" ); + assembler.assembleModelInheritance( NAME, childModel, parentModel, "http://maven.apache.org/doxia", + "http://maven.apache.org" ); + assertEquals( "Check result", unassembledChildModel, childModel ); + } + + /** + * + * @throws IOException + * @throws XmlPullParserException + */ public void testPathsResolvedWhenEmpty() throws IOException, XmlPullParserException { Copied: maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/src/test/resources/child-no-inheritance.xml (from r1604205, maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/src/test/resources/child.xml) URL: http://svn.apache.org/viewvc/maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/src/test/resources/child-no-inheritance.xml?p2=maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/src/test/resources/child-no-inheritance.xml&p1=maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/src/test/resources/child.xml&r1=1604205&r2=1604218&rev=1604218&view=diff ============================================================================== --- maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/src/test/resources/child.xml (original) +++ maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/src/test/resources/child-no-inheritance.xml Fri Jun 20 17:17:27 2014 @@ -19,10 +19,11 @@ specific language governing permissions under the License. --> -<project xmlns="http://maven.apache.org/DECORATION/1.0.0" +<project xmlns="http://maven.apache.org/DECORATION/1.6.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xsi:schemaLocation="http://maven.apache.org/DECORATION/1.0.0 file:../../../target/generated-site/xsd/decoration-1.0.0.xsd" - name="Child"> + xsi:schemaLocation="http://maven.apache.org/DECORATION/1.0.0 file:../../../target/generated-site/xsd/decoration-1.6.0.xsd" + name="Child" + combine.self="override"> <body> <links> <item name="Bouncy Castle" href="http://www.bouncycastle.org"/> Modified: maven/doxia/doxia-sitetools/trunk/pom.xml URL: http://svn.apache.org/viewvc/maven/doxia/doxia-sitetools/trunk/pom.xml?rev=1604218&r1=1604217&r2=1604218&view=diff ============================================================================== --- maven/doxia/doxia-sitetools/trunk/pom.xml (original) +++ maven/doxia/doxia-sitetools/trunk/pom.xml Fri Jun 20 17:17:27 2014 @@ -296,6 +296,28 @@ under the License. <pluginManagement> <plugins> <plugin> + <artifactId>maven-enforcer-plugin</artifactId> + <executions> + <execution> + <id>enforce-bytecode-version</id> + <goals> + <goal>enforce</goal> + </goals> + <configuration> + <rules> + <enforceBytecodeVersion> + <maxJdkVersion>1.5</maxJdkVersion> + <excludes> + <exclude>org.apache.xmlgraphics:*</exclude> + </excludes> + </enforceBytecodeVersion> + </rules> + <fail>true</fail> + </configuration> + </execution> + </executions> + </plugin> + <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-release-plugin</artifactId> <configuration>