You are viewing a plain text version of this content. The canonical link for it is here.
Posted to batik-commits@xmlgraphics.apache.org by lb...@apache.org on 2014/12/23 16:10:50 UTC

svn commit: r1647590 [3/24] - in /xmlgraphics/batik/branches/submodules_cyclic_deps: ./ resources/META-INF/services/ resources/org/apache/batik/anim/dom/ resources/org/apache/batik/anim/dom/resources/ resources/org/apache/batik/apps/rasterizer/resource...

Added: xmlgraphics/batik/branches/submodules_cyclic_deps/buildpom.sh
URL: http://svn.apache.org/viewvc/xmlgraphics/batik/branches/submodules_cyclic_deps/buildpom.sh?rev=1647590&view=auto
==============================================================================
--- xmlgraphics/batik/branches/submodules_cyclic_deps/buildpom.sh (added)
+++ xmlgraphics/batik/branches/submodules_cyclic_deps/buildpom.sh Tue Dec 23 15:10:45 2014
@@ -0,0 +1,160 @@
+#!/bin/bash
+desc="Batik module description"
+case "$1" in
+'batik-anim')
+desc="Batik animation engine"
+;;
+'batik-awt-util')
+desc="Batik AWT utilities"
+;;
+'batik-bridge')
+desc="Batik bridge classes"
+;;
+'batik-codec')
+desc="Batik image codecs"
+;;
+'batik-css')
+desc="Batik CSS engine"
+;;
+'batik-dom')
+desc="Batik DOM implementation"
+;;
+'batik-extension')
+desc="Batik extension classes"
+;;
+'batik-ext')
+desc="Batik external code"
+;;
+'batik-gui-util')
+desc="Batik GUI utility classes"
+;;
+'batik-gvt')
+desc="Batik GVT (Graphics Vector Tree)"
+;;
+'batik-parser')
+desc="Batik SVG microsyntax parser library"
+;;
+'batik-rasterizer-ext')
+desc="Batik SVG rasterizer application with extensions"
+;;
+'batik-rasterizer')
+desc="Batik SVG rasterizer application"
+;;
+'batik-script')
+desc="Batik scripting language classes"
+;;
+'batik-slideshow')
+desc="Batik SVG slideshow application"
+;;
+'batik-squiggle-ext')
+desc="Batik SVG browser application with extensions"
+;;
+'batik-squiggle')
+desc="Batik SVG browser application"
+;;
+'batik-svg-dom')
+desc="Batik SVG DOM implementation"
+;;
+'batik-svggen')
+desc="Batik Java2D SVG generator"
+;;
+'batik-svgpp')
+desc="Batik SVG pretty-printer application"
+;;
+'batik-swing')
+desc="Batik SVG Swing components"
+;;
+'batik-transcoder')
+desc="Batik SVG transcoder classes"
+;;
+'batik-ttf2svg')
+desc="Batik TrueType Font to SVG Font converter application"
+;;
+'batik-util')
+desc="Batik utility library"
+;;
+'batik-xml')
+desc="Batik XML utility library"
+;;
+*)
+desc="Batik module description"
+;;
+esac
+echo '<?xml version="1.0"?>
+<!--
+
+   Licensed to the Apache Software Foundation (ASF) under one or more
+   contributor license agreements.  See the NOTICE file distributed with
+   this work for additional information regarding copyright ownership.
+   The ASF licenses this file to You 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.
+
+-->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+
+  <modelVersion>4.0.0</modelVersion>
+  <groupId>org.apache.xmlgraphics</groupId>
+  <artifactId>'$1'</artifactId>
+  <version>@version@</version>
+  <packaging>jar</packaging>
+  <name>'$desc'</name>
+  <url>http://xmlgraphics.apache.org/batik/</url>
+  <inceptionYear>2000</inceptionYear>
+
+  <mailingLists>
+    <mailingList>
+      <name>Batik Users List</name>
+      <subscribe>batik-users-subscribe@xmlgraphics.apache.org</subscribe>
+      <unsubscribe>batik-users-unsubscribe@xmlgraphics.apache.org</unsubscribe>
+      <archive>http://mail-archives.apache.org/mod_mbox/xmlgraphics-batik-users/</archive>
+    </mailingList>
+    <mailingList>
+      <name>Batik Developer List</name>
+      <subscribe>batik-dev-subscribe@xmlgraphics.apache.org</subscribe>
+      <unsubscribe>batik-dev-unsubscribe@xmlgraphics.apache.org</unsubscribe>
+      <archive>http://mail-archives.apache.org/mod_mbox/xmlgraphics-batik-dev/</archive>
+    </mailingList>
+    <mailingList>
+      <name>Batik Commit List</name>
+      <subscribe>batik-commits-subscribe@xmlgraphics.apache.org</subscribe>
+      <unsubscribe>batik-commits-unsubscribe@xmlgraphics.apache.org</unsubscribe>
+      <archive>http://mail-archives.apache.org/mod_mbox/xmlgraphics-batik-commits/</archive>
+    </mailingList>
+  </mailingLists>
+
+  <licenses>
+    <license>
+      <name>The Apache Software License, Version 2.0</name>
+      <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
+      <distribution>repo</distribution>
+    </license>
+  </licenses>
+
+  <scm>
+    <connection>scm:svn:http://svn.apache.org/repos/asf/xmlgraphics/batik/trunk</connection>
+    <developerConnection>scm:svn:https://svn.apache.org/repos/asf/xmlgraphics/batik/trunk</developerConnection>
+    <url>http://svn.apache.org/viewvc/xmlgraphics/batik/trunk/?root=Apache-SVN</url>
+  </scm>
+
+  <organization>
+    <name>Apache Software Foundation</name>
+    <url>http://www.apache.org/</url>
+  </organization>
+
+  <dependencies>'
+grep jar checkdeps/dot/$1-svn-trunk.jar.dot | grep -v java | grep org.apache.batik | awk '{print $4}' | sort -u | sed s/xalan-2.6.0/xalan/g | sed s/'-svn-trunk.jar)";'//g | sed s/'.jar)";'//g | sed s/'('//g | awk '{version = "@version@"; groupId = "org.apache.xmlgraphics"; if ($1 == "xml-apis" || $1 == "xml-apis-ext") {version = "1.3.04"; groupId = "xml-apis"} else if ($1 == "xmlgraphics-commons") {version = "@xgcVersion@"} else if ($1 == "xalan") {version = "2.6.0"; groupId = "xalan";}; printf("    <dependency>\n      <groupId>%s</groupId>\n      <artifactId>%s</artifactId>\n      <version>%s</version>\n    </dependency>\n", groupId, $1, version);}'
+echo '  </dependencies>
+</project>'
+

Propchange: xmlgraphics/batik/branches/submodules_cyclic_deps/buildpom.sh
------------------------------------------------------------------------------
    svn:executable = *

Added: xmlgraphics/batik/branches/submodules_cyclic_deps/buildpoms.sh
URL: http://svn.apache.org/viewvc/xmlgraphics/batik/branches/submodules_cyclic_deps/buildpoms.sh?rev=1647590&view=auto
==============================================================================
--- xmlgraphics/batik/branches/submodules_cyclic_deps/buildpoms.sh (added)
+++ xmlgraphics/batik/branches/submodules_cyclic_deps/buildpoms.sh Tue Dec 23 15:10:45 2014
@@ -0,0 +1,7 @@
+./builddeps.sh
+rm -rf checkpoms
+mkdir checkpoms
+ls -l checkdeps/dot/batik-* | grep -v js | sed s/'checkdeps\/dot\/'//g | sed s/-svn-trunk.jar.dot//g | awk '{printf("./buildpom.sh %s > checkpoms/%s.pom.template\n", $9, $9)}' > generate-poms.sh
+chmod +x generate-poms.sh
+./generate-poms.sh
+rm generate-poms.sh

Propchange: xmlgraphics/batik/branches/submodules_cyclic_deps/buildpoms.sh
------------------------------------------------------------------------------
    svn:executable = *

Modified: xmlgraphics/batik/branches/submodules_cyclic_deps/resources/META-INF/services/org.apache.batik.script.InterpreterFactory
URL: http://svn.apache.org/viewvc/xmlgraphics/batik/branches/submodules_cyclic_deps/resources/META-INF/services/org.apache.batik.script.InterpreterFactory?rev=1647590&r1=1647589&r2=1647590&view=diff
==============================================================================
--- xmlgraphics/batik/branches/submodules_cyclic_deps/resources/META-INF/services/org.apache.batik.script.InterpreterFactory (original)
+++ xmlgraphics/batik/branches/submodules_cyclic_deps/resources/META-INF/services/org.apache.batik.script.InterpreterFactory Tue Dec 23 15:10:45 2014
@@ -23,7 +23,7 @@
 
 
 # ECMAScript
-org.apache.batik.script.rhino.RhinoInterpreterFactory
+org.apache.batik.bridge.RhinoInterpreterFactory
 # TCL
 #org.apache.batik.script.jacl.JaclInterpreterFactory
 # Python

Added: xmlgraphics/batik/branches/submodules_cyclic_deps/resources/org/apache/batik/anim/dom/resources/dtdids.properties
URL: http://svn.apache.org/viewvc/xmlgraphics/batik/branches/submodules_cyclic_deps/resources/org/apache/batik/anim/dom/resources/dtdids.properties?rev=1647590&view=auto
==============================================================================
--- xmlgraphics/batik/branches/submodules_cyclic_deps/resources/org/apache/batik/anim/dom/resources/dtdids.properties (added)
+++ xmlgraphics/batik/branches/submodules_cyclic_deps/resources/org/apache/batik/anim/dom/resources/dtdids.properties Tue Dec 23 15:10:45 2014
@@ -0,0 +1,68 @@
+# -----------------------------------------------------------------------------
+#
+#   Licensed to the Apache Software Foundation (ASF) under one or more
+#   contributor license agreements.  See the NOTICE file distributed with
+#   this work for additional information regarding copyright ownership.
+#   The ASF licenses this file to You 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.
+#
+# The publicIds property represents the list of SVG DTD IDs supported by
+# this SVG DOMImplementation.
+#
+# $Id$
+# -----------------------------------------------------------------------------
+
+publicIds = \
+    -//W3C//DTD SVG 1.0//EN\
+    -//W3C//DTD SVG 20010904//EN\
+    -//W3C//DTD SVG 20001102//EN\
+    -//W3C//DTD SVG 20000802//EN\
+    -//W3C//DTD SVG 20000303 Stylable//EN\
+    -//W3C//DTD SVG 1.1//EN\
+    -//W3C//DTD SVG 1.1 Basic//EN\
+    -//W3C//DTD SVG 1.1 Tiny//EN\
+    -//W3C//DTD SVG 1.2//EN
+
+systemId.-//W3C//DTD_SVG_1.0//EN = resources/svg10.dtd
+systemId.-//W3C//DTD_SVG_20010904//EN = resources/svg10.dtd
+systemId.-//W3C//DTD_SVG_20001102//EN = resources/svg10.dtd
+systemId.-//W3C//DTD_SVG_20000802//EN = resources/svg10.dtd
+systemId.-//W3C//DTD_SVG_20000303_Stylable//EN = resources/svg10.dtd
+
+systemId.-//W3C//DTD_SVG_1.1//EN = resources/svg11-flat.dtd
+systemId.-//W3C//DTD_SVG_1.1_Basic//EN = resources/svg11-basic-flat.dtd
+systemId.-//W3C//DTD_SVG_1.1_Tiny//EN = resources/svg11-tiny-flat.dtd
+systemId.-//W3C//DTD_SVG_1.2//EN = resources/svg12-flat.dtd
+
+#
+# The skippablePublicIds property represents the list of SVG DTD's we
+# can safely skip if we are not validating.  Since SVG may move to
+# schema you shouldn't count on any entities from these files anyways.
+#
+skippablePublicIds = \
+    -//W3C//DTD SVG 1.0//EN\
+    -//W3C//DTD SVG 20010904//EN\
+    -//W3C//DTD SVG 20001102//EN\
+    -//W3C//DTD SVG 20000802//EN\
+    -//W3C//DTD SVG 20000303 Stylable//EN\
+    -//W3C//DTD SVG 1.1//EN\
+    -//W3C//DTD SVG 1.1 Basic//EN\
+    -//W3C//DTD SVG 1.1 Tiny//EN\
+    -//W3C//DTD SVG 1.2//EN
+
+#
+#  This is an absolutely minimal DTD for SVG 1.0/1.1
+#  It just defines the svg and xlink namespaces.
+skipDTD = \
+<!ELEMENT svg (desc|title|metadata|defs)*> \
+<!ATTLIST svg xmlns CDATA #FIXED "http://www.w3.org/2000/svg" \
+              xmlns:xlink CDATA #FIXED "http://www.w3.org/1999/xlink" >

Modified: xmlgraphics/batik/branches/submodules_cyclic_deps/resources/org/apache/batik/apps/rasterizer/resources/rasterizer.bin.policy
URL: http://svn.apache.org/viewvc/xmlgraphics/batik/branches/submodules_cyclic_deps/resources/org/apache/batik/apps/rasterizer/resources/rasterizer.bin.policy?rev=1647590&r1=1647589&r2=1647590&view=diff
==============================================================================
--- xmlgraphics/batik/branches/submodules_cyclic_deps/resources/org/apache/batik/apps/rasterizer/resources/rasterizer.bin.policy (original)
+++ xmlgraphics/batik/branches/submodules_cyclic_deps/resources/org/apache/batik/apps/rasterizer/resources/rasterizer.bin.policy Tue Dec 23 15:10:45 2014
@@ -90,6 +90,10 @@ grant codeBase "${app.jar.base}/lib/bati
   permission java.security.AllPermission;
 };
 
+ grant codeBase "${app.jar.base}/lib/xmlgraphics-commons-svn-trunk" {
+   permission java.security.AllPermission;
+ };
+
 grant codeBase "${app.jar.base}/lib/js.jar" {
   permission java.lang.RuntimePermission "createClassLoader";
   permission java.net.SocketPermission "*", "listen, connect, resolve, accept";

Modified: xmlgraphics/batik/branches/submodules_cyclic_deps/resources/org/apache/batik/apps/rasterizer/resources/rasterizer.policy
URL: http://svn.apache.org/viewvc/xmlgraphics/batik/branches/submodules_cyclic_deps/resources/org/apache/batik/apps/rasterizer/resources/rasterizer.policy?rev=1647590&r1=1647589&r2=1647590&view=diff
==============================================================================
--- xmlgraphics/batik/branches/submodules_cyclic_deps/resources/org/apache/batik/apps/rasterizer/resources/rasterizer.policy (original)
+++ xmlgraphics/batik/branches/submodules_cyclic_deps/resources/org/apache/batik/apps/rasterizer/resources/rasterizer.policy Tue Dec 23 15:10:45 2014
@@ -30,10 +30,13 @@ grant codeBase "${app.dev.base}/lib/xerc
   permission java.security.AllPermission;
 };
 
-grant codeBase "${app.dev.base}/lib/pdf-transcoder.jar" {
+grant codeBase "${app.dev.base}/lib/fop-transcoder-allinone-svn-trunk.jar" {
   permission java.security.AllPermission;
 };
 
+grant codeBase "${app.dev.base}/lib/xmlgraphics-commons-svn-trunk.jar" {
+  permission java.security.AllPermission;
+};
 
 grant codeBase "${app.dev.base}/lib/js.jar" {
   permission java.lang.RuntimePermission "createClassLoader";

Added: xmlgraphics/batik/branches/submodules_cyclic_deps/resources/org/apache/batik/apps/rasterizer/resources/rasterizer.policy.ref
URL: http://svn.apache.org/viewvc/xmlgraphics/batik/branches/submodules_cyclic_deps/resources/org/apache/batik/apps/rasterizer/resources/rasterizer.policy.ref?rev=1647590&view=auto
==============================================================================
--- xmlgraphics/batik/branches/submodules_cyclic_deps/resources/org/apache/batik/apps/rasterizer/resources/rasterizer.policy.ref (added)
+++ xmlgraphics/batik/branches/submodules_cyclic_deps/resources/org/apache/batik/apps/rasterizer/resources/rasterizer.policy.ref Tue Dec 23 15:10:45 2014
@@ -0,0 +1,109 @@
+// -----------------------------------------------------------------------------
+//
+//   Licensed to the Apache Software Foundation (ASF) under one or more
+//   contributor license agreements.  See the NOTICE file distributed with
+//   this work for additional information regarding copyright ownership.
+//   The ASF licenses this file to You 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.
+//
+// $Id: rasterizer.bin.policy 476799 2006-11-19 11:33:41Z cam $
+// -----------------------------------------------------------------------------
+
+grant codeBase "${app.jar.base}/@jarsLibDir@xml-apis-dom3.jar" {
+  permission java.security.AllPermission;
+};
+
+grant codeBase "${app.jar.base}/@jarsLibDir@xerces_2_5_0.jar" {
+  permission java.security.AllPermission;
+};
+
+grant codeBase "${app.jar.base}/batik-rasterizer-@batikVersion@.jar" {
+  permission java.security.AllPermission;
+};
+
+grant codeBase "${app.jar.base}/@jarsLibDir@batik-ext-@batikVersion@.jar" {
+  permission java.security.AllPermission;
+};
+
+grant codeBase "${app.jar.base}/@jarsLibDir@batik-dom-@batikVersion@.jar" {
+  permission java.security.AllPermission;
+};
+
+grant codeBase "${app.jar.base}/@jarsLibDir@batik-css-@batikVersion@.jar" {
+  permission java.security.AllPermission;
+};
+
+grant codeBase "${app.jar.base}/@jarsLibDir@batik-svg-dom-@batikVersion@.jar" {
+  permission java.security.AllPermission;
+};
+
+grant codeBase "${app.jar.base}/@jarsLibDir@batik-gvt-@batikVersion@.jar" {
+  permission java.security.AllPermission;
+};
+
+grant codeBase "${app.jar.base}/@jarsLibDir@batik-parser-@batikVersion@.jar" {
+  permission java.security.AllPermission;
+};
+
+grant codeBase "${app.jar.base}/@jarsLibDir@batik-script-@batikVersion@.jar" {
+  permission java.security.AllPermission;
+};
+
+grant codeBase "${app.jar.base}/@jarsLibDir@batik-bridge-@batikVersion@.jar" {
+  permission java.security.AllPermission;
+};
+
+grant codeBase "${app.jar.base}/@jarsLibDir@batik-swing-@batikVersion@.jar" {
+  permission java.security.AllPermission;
+};
+
+grant codeBase "${app.jar.base}/@jarsLibDir@batik-transcoder-@batikVersion@.jar" {
+  permission java.security.AllPermission;
+};
+
+grant codeBase "${app.jar.base}/@jarsLibDir@batik-gui-util-@batikVersion@.jar" {
+  permission java.security.AllPermission;
+};
+
+grant codeBase "${app.jar.base}/@jarsLibDir@batik-awt-util-@batikVersion@.jar" {
+  permission java.security.AllPermission;
+};
+
+grant codeBase "${app.jar.base}/@jarsLibDir@batik-util-@batikVersion@.jar" {
+  permission java.security.AllPermission;
+};
+
+grant codeBase "${app.jar.base}/@jarsLibDir@batik-xml-@batikVersion@.jar" {
+  permission java.security.AllPermission;
+};
+
+grant codeBase "${app.jar.base}/@jarsLibDir@fop-transcoder-allinone-@fopVersion@.jar" {
+  permission java.security.AllPermission;
+};
+
+grant codeBase "${app.jar.base}/@jarsLibDir@xmlgraphics-commons-@xgcVersion@.jar" {
+  permission java.security.AllPermission;
+};
+
+grant codeBase "${app.jar.base}/@jarsLibDir@js.jar" {
+  permission java.lang.RuntimePermission "createClassLoader";
+  permission java.net.SocketPermission "*", "listen, connect, resolve, accept";
+  permission java.lang.RuntimePermission "accessDeclaredMembers";
+  permission java.util.PropertyPermission "org.mozilla.javascript.JavaAdapter", "read";
+  permission java.util.PropertyPermission "org.mozilla.javascript.JavaAdapterClassName", "read";
+  permission java.io.FilePermission "<<ALL FILES>>", "read";
+};
+
+grant {
+ permission java.io.FilePermission  "${app.jar.base}/@jarsLibDir@batik-svg-dom-@batikVersion@.jar", "read";
+};
+

Modified: xmlgraphics/batik/branches/submodules_cyclic_deps/resources/org/apache/batik/apps/svgbrowser/resources/svgbrowser.bin.policy
URL: http://svn.apache.org/viewvc/xmlgraphics/batik/branches/submodules_cyclic_deps/resources/org/apache/batik/apps/svgbrowser/resources/svgbrowser.bin.policy?rev=1647590&r1=1647589&r2=1647590&view=diff
==============================================================================
--- xmlgraphics/batik/branches/submodules_cyclic_deps/resources/org/apache/batik/apps/svgbrowser/resources/svgbrowser.bin.policy (original)
+++ xmlgraphics/batik/branches/submodules_cyclic_deps/resources/org/apache/batik/apps/svgbrowser/resources/svgbrowser.bin.policy Tue Dec 23 15:10:45 2014
@@ -90,6 +90,10 @@ grant codeBase "${app.jar.base}/lib/bati
   permission java.security.AllPermission;
 };
 
+grant codeBase "${app.jar.base}/lib/xmlgraphics-commons-svn-trunk" {
+  permission java.security.AllPermission;
+};
+
 grant codeBase "${app.jar.base}/lib/js.jar" {
   permission java.lang.RuntimePermission "createClassLoader";
   permission java.net.SocketPermission "*", "listen, connect, resolve, accept";

Added: xmlgraphics/batik/branches/submodules_cyclic_deps/resources/org/apache/batik/apps/svgbrowser/resources/svgbrowser.policy.ref
URL: http://svn.apache.org/viewvc/xmlgraphics/batik/branches/submodules_cyclic_deps/resources/org/apache/batik/apps/svgbrowser/resources/svgbrowser.policy.ref?rev=1647590&view=auto
==============================================================================
--- xmlgraphics/batik/branches/submodules_cyclic_deps/resources/org/apache/batik/apps/svgbrowser/resources/svgbrowser.policy.ref (added)
+++ xmlgraphics/batik/branches/submodules_cyclic_deps/resources/org/apache/batik/apps/svgbrowser/resources/svgbrowser.policy.ref Tue Dec 23 15:10:45 2014
@@ -0,0 +1,109 @@
+// -----------------------------------------------------------------------------
+//
+//   Licensed to the Apache Software Foundation (ASF) under one or more
+//   contributor license agreements.  See the NOTICE file distributed with
+//   this work for additional information regarding copyright ownership.
+//   The ASF licenses this file to You 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.
+//
+// $Id: rasterizer.bin.policy 476799 2006-11-19 11:33:41Z cam $
+// -----------------------------------------------------------------------------
+
+grant codeBase "${app.jar.base}/@jarsLibDir@xml-apis.jar" {
+  permission java.security.AllPermission;
+};
+
+grant codeBase "${app.jar.base}/@jarsLibDir@xml-apis-ext.jar" {
+  permission java.security.AllPermission;
+};
+
+grant codeBase "${app.jar.base}/@jarsLibDir@xerces_2_5_0.jar" {
+  permission java.security.AllPermission;
+};
+
+grant codeBase "${app.jar.base}/batik-squiggle-@batikVersion@.jar" {
+  permission java.security.AllPermission;
+};
+
+grant codeBase "${app.jar.base}/@jarsLibDir@batik-ext-@batikVersion@.jar" {
+  permission java.security.AllPermission;
+};
+
+grant codeBase "${app.jar.base}/@jarsLibDir@batik-dom-@batikVersion@.jar" {
+  permission java.security.AllPermission;
+};
+
+grant codeBase "${app.jar.base}/@jarsLibDir@batik-css-@batikVersion@.jar" {
+  permission java.security.AllPermission;
+};
+
+grant codeBase "${app.jar.base}/@jarsLibDir@batik-svg-dom-@batikVersion@.jar" {
+  permission java.security.AllPermission;
+};
+
+grant codeBase "${app.jar.base}/@jarsLibDir@batik-gvt-@batikVersion@.jar" {
+  permission java.security.AllPermission;
+};
+
+grant codeBase "${app.jar.base}/@jarsLibDir@batik-parser-@batikVersion@.jar" {
+  permission java.security.AllPermission;
+};
+
+grant codeBase "${app.jar.base}/@jarsLibDir@batik-script-@batikVersion@.jar" {
+  permission java.security.AllPermission;
+};
+
+grant codeBase "${app.jar.base}/@jarsLibDir@batik-bridge-@batikVersion@.jar" {
+  permission java.security.AllPermission;
+};
+
+grant codeBase "${app.jar.base}/@jarsLibDir@batik-swing-@batikVersion@.jar" {
+  permission java.security.AllPermission;
+};
+
+grant codeBase "${app.jar.base}/@jarsLibDir@batik-transcoder-@batikVersion@.jar" {
+  permission java.security.AllPermission;
+};
+
+grant codeBase "${app.jar.base}/@jarsLibDir@batik-gui-util-@batikVersion@.jar" {
+  permission java.security.AllPermission;
+};
+
+grant codeBase "${app.jar.base}/@jarsLibDir@batik-awt-util-@batikVersion@.jar" {
+  permission java.security.AllPermission;
+};
+
+grant codeBase "${app.jar.base}/@jarsLibDir@batik-util-@batikVersion@.jar" {
+  permission java.security.AllPermission;
+};
+
+grant codeBase "${app.jar.base}/@jarsLibDir@batik-xml-@batikVersion@.jar" {
+  permission java.security.AllPermission;
+};
+
+grant codeBase "${app.jar.base}/@jarsLibDir@xmlgraphics-commons-@xgcVersion@.jar" {
+  permission java.security.AllPermission;
+};
+
+grant codeBase "${app.jar.base}/@jarsLibDir@js.jar" {
+  permission java.lang.RuntimePermission "createClassLoader";
+  permission java.net.SocketPermission "*", "listen, connect, resolve, accept";
+  permission java.lang.RuntimePermission "accessDeclaredMembers";
+  permission java.util.PropertyPermission "org.mozilla.javascript.JavaAdapter", "read";
+  permission java.util.PropertyPermission "org.mozilla.javascript.JavaAdapterClassName", "read";
+  permission java.io.FilePermission "<<ALL FILES>>", "read";
+};
+
+grant {
+   permission java.io.FilePermission  "${app.jar.base}/@jarsLibDir@batik-dom-@batikVersion@.jar","read";
+};
+

Modified: xmlgraphics/batik/branches/submodules_cyclic_deps/samples/tests/resources/java/sources/com/untrusted/script/UntrustedScriptHandler.java
URL: http://svn.apache.org/viewvc/xmlgraphics/batik/branches/submodules_cyclic_deps/samples/tests/resources/java/sources/com/untrusted/script/UntrustedScriptHandler.java?rev=1647590&r1=1647589&r2=1647590&view=diff
==============================================================================
--- xmlgraphics/batik/branches/submodules_cyclic_deps/samples/tests/resources/java/sources/com/untrusted/script/UntrustedScriptHandler.java (original)
+++ xmlgraphics/batik/branches/submodules_cyclic_deps/samples/tests/resources/java/sources/com/untrusted/script/UntrustedScriptHandler.java Tue Dec 23 15:10:45 2014
@@ -18,14 +18,6 @@
  */
 package com.untrusted.script;
 
-import org.apache.batik.script.ScriptHandler;
-import org.apache.batik.script.Window;
-
-import org.apache.batik.dom.svg.SVGOMDocument;
-
-import org.w3c.dom.*;
-import org.w3c.dom.events.*;
-
 import java.awt.AWTPermission;
 import java.io.FilePermission;
 import java.io.SerializablePermission;
@@ -35,11 +27,21 @@ import java.net.SocketPermission;
 import java.net.URL;
 import java.security.AllPermission;
 import java.security.Permission;
-import java.security.SecurityPermission;
 import java.sql.SQLPermission;
 import java.util.PropertyPermission;
+
 import javax.sound.sampled.AudioPermission;
 
+import org.w3c.dom.Document;
+import org.w3c.dom.Element;
+import org.w3c.dom.Window;
+import org.w3c.dom.events.Event;
+import org.w3c.dom.events.EventListener;
+import org.w3c.dom.events.EventTarget;
+
+import org.apache.batik.anim.dom.SVGOMDocument;
+import org.apache.batik.bridge.ScriptHandler;
+
 /**
  * This class implements the ScriptHandler interface and represents an 
  * example of untrusted code.
@@ -292,5 +294,11 @@ public class UntrustedScriptHandler impl
         
     }
 
+    @Override
+    public void run(Document doc, org.apache.batik.bridge.Window win) {
+        // TODO Auto-generated method stub
+
+    }
+
 }
 

Modified: xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-anim.pom.template
URL: http://svn.apache.org/viewvc/xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-anim.pom.template?rev=1647590&r1=1647589&r2=1647590&view=diff
==============================================================================
--- xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-anim.pom.template (original)
+++ xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-anim.pom.template Tue Dec 23 15:10:45 2014
@@ -79,6 +79,11 @@
     </dependency>
     <dependency>
       <groupId>org.apache.xmlgraphics</groupId>
+      <artifactId>batik-css</artifactId>
+      <version>@version@</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.xmlgraphics</groupId>
       <artifactId>batik-dom</artifactId>
       <version>@version@</version>
     </dependency>
@@ -104,12 +109,12 @@
     </dependency>
     <dependency>
       <groupId>xml-apis</groupId>
-      <artifactId>xml-apis</artifactId>
+      <artifactId>xml-apis-ext</artifactId>
       <version>1.3.04</version>
     </dependency>
     <dependency>
       <groupId>xml-apis</groupId>
-      <artifactId>xml-apis-ext</artifactId>
+      <artifactId>xml-apis</artifactId>
       <version>1.3.04</version>
     </dependency>
   </dependencies>

Modified: xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-bridge.pom.template
URL: http://svn.apache.org/viewvc/xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-bridge.pom.template?rev=1647590&r1=1647589&r2=1647590&view=diff
==============================================================================
--- xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-bridge.pom.template (original)
+++ xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-bridge.pom.template Tue Dec 23 15:10:45 2014
@@ -134,12 +134,12 @@
     </dependency>
     <dependency>
       <groupId>xml-apis</groupId>
-      <artifactId>xml-apis</artifactId>
+      <artifactId>xml-apis-ext</artifactId>
       <version>1.3.04</version>
     </dependency>
     <dependency>
       <groupId>xml-apis</groupId>
-      <artifactId>xml-apis-ext</artifactId>
+      <artifactId>xml-apis</artifactId>
       <version>1.3.04</version>
     </dependency>
   </dependencies>

Modified: xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-css.pom.template
URL: http://svn.apache.org/viewvc/xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-css.pom.template?rev=1647590&r1=1647589&r2=1647590&view=diff
==============================================================================
--- xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-css.pom.template (original)
+++ xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-css.pom.template Tue Dec 23 15:10:45 2014
@@ -84,12 +84,12 @@
     </dependency>
     <dependency>
       <groupId>xml-apis</groupId>
-      <artifactId>xml-apis</artifactId>
+      <artifactId>xml-apis-ext</artifactId>
       <version>1.3.04</version>
     </dependency>
     <dependency>
       <groupId>xml-apis</groupId>
-      <artifactId>xml-apis-ext</artifactId>
+      <artifactId>xml-apis</artifactId>
       <version>1.3.04</version>
     </dependency>
   </dependencies>

Modified: xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-dom.pom.template
URL: http://svn.apache.org/viewvc/xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-dom.pom.template?rev=1647590&r1=1647589&r2=1647590&view=diff
==============================================================================
--- xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-dom.pom.template (original)
+++ xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-dom.pom.template Tue Dec 23 15:10:45 2014
@@ -99,12 +99,12 @@
     </dependency>
     <dependency>
       <groupId>xml-apis</groupId>
-      <artifactId>xml-apis</artifactId>
+      <artifactId>xml-apis-ext</artifactId>
       <version>1.3.04</version>
     </dependency>
     <dependency>
       <groupId>xml-apis</groupId>
-      <artifactId>xml-apis-ext</artifactId>
+      <artifactId>xml-apis</artifactId>
       <version>1.3.04</version>
     </dependency>
   </dependencies>

Modified: xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-ext.pom.template
URL: http://svn.apache.org/viewvc/xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-ext.pom.template?rev=1647590&r1=1647589&r2=1647590&view=diff
==============================================================================
--- xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-ext.pom.template (original)
+++ xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-ext.pom.template Tue Dec 23 15:10:45 2014
@@ -72,10 +72,5 @@
   </organization>
 
   <dependencies>
-    <dependency>
-      <groupId>xml-apis</groupId>
-      <artifactId>xml-apis</artifactId>
-      <version>1.3.04</version>
-    </dependency>
   </dependencies>
 </project>

Modified: xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-extension.pom.template
URL: http://svn.apache.org/viewvc/xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-extension.pom.template?rev=1647590&r1=1647589&r2=1647590&view=diff
==============================================================================
--- xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-extension.pom.template (original)
+++ xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-extension.pom.template Tue Dec 23 15:10:45 2014
@@ -74,6 +74,11 @@
   <dependencies>
     <dependency>
       <groupId>org.apache.xmlgraphics</groupId>
+      <artifactId>batik-anim</artifactId>
+      <version>@version@</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.xmlgraphics</groupId>
       <artifactId>batik-awt-util</artifactId>
       <version>@version@</version>
     </dependency>
@@ -119,12 +124,12 @@
     </dependency>
     <dependency>
       <groupId>xml-apis</groupId>
-      <artifactId>xml-apis</artifactId>
+      <artifactId>xml-apis-ext</artifactId>
       <version>1.3.04</version>
     </dependency>
     <dependency>
       <groupId>xml-apis</groupId>
-      <artifactId>xml-apis-ext</artifactId>
+      <artifactId>xml-apis</artifactId>
       <version>1.3.04</version>
     </dependency>
   </dependencies>

Modified: xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-gui-util.pom.template
URL: http://svn.apache.org/viewvc/xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-gui-util.pom.template?rev=1647590&r1=1647589&r2=1647590&view=diff
==============================================================================
--- xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-gui-util.pom.template (original)
+++ xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-gui-util.pom.template Tue Dec 23 15:10:45 2014
@@ -77,5 +77,10 @@
       <artifactId>batik-util</artifactId>
       <version>@version@</version>
     </dependency>
+    <dependency>
+      <groupId>org.apache.xmlgraphics</groupId>
+      <artifactId>batik-xml</artifactId>
+      <version>@version@</version>
+    </dependency>
   </dependencies>
 </project>

Modified: xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-gvt.pom.template
URL: http://svn.apache.org/viewvc/xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-gvt.pom.template?rev=1647590&r1=1647589&r2=1647590&view=diff
==============================================================================
--- xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-gvt.pom.template (original)
+++ xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-gvt.pom.template Tue Dec 23 15:10:45 2014
@@ -79,18 +79,8 @@
     </dependency>
     <dependency>
       <groupId>org.apache.xmlgraphics</groupId>
-      <artifactId>batik-bridge</artifactId>
-      <version>@version@</version>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.xmlgraphics</groupId>
       <artifactId>batik-util</artifactId>
       <version>@version@</version>
     </dependency>
-    <dependency>
-      <groupId>xml-apis</groupId>
-      <artifactId>xml-apis</artifactId>
-      <version>1.3.04</version>
-    </dependency>
   </dependencies>
 </project>

Modified: xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-parser.pom.template
URL: http://svn.apache.org/viewvc/xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-parser.pom.template?rev=1647590&r1=1647589&r2=1647590&view=diff
==============================================================================
--- xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-parser.pom.template (original)
+++ xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-parser.pom.template Tue Dec 23 15:10:45 2014
@@ -87,5 +87,15 @@
       <artifactId>batik-xml</artifactId>
       <version>@version@</version>
     </dependency>
+    <dependency>
+      <groupId>xml-apis</groupId>
+      <artifactId>xml-apis-ext</artifactId>
+      <version>1.3.04</version>
+    </dependency>
+    <dependency>
+      <groupId>xml-apis</groupId>
+      <artifactId>xml-apis</artifactId>
+      <version>1.3.04</version>
+    </dependency>
   </dependencies>
 </project>

Modified: xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-rasterizer-ext.mf
URL: http://svn.apache.org/viewvc/xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-rasterizer-ext.mf?rev=1647590&r1=1647589&r2=1647590&view=diff
==============================================================================
--- xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-rasterizer-ext.mf (original)
+++ xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-rasterizer-ext.mf Tue Dec 23 15:10:45 2014
@@ -1,4 +1,4 @@
 Manifest-Version: 1.0
 Main-Class: org.apache.batik.apps.rasterizer.Main
 Class-Path: ../batik-rasterizer.jar
-            ../lib/batik-extension.jar
+  ../lib/batik-extension.jar

Modified: xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-rasterizer.mf
URL: http://svn.apache.org/viewvc/xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-rasterizer.mf?rev=1647590&r1=1647589&r2=1647590&view=diff
==============================================================================
--- xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-rasterizer.mf (original)
+++ xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-rasterizer.mf Tue Dec 23 15:10:45 2014
@@ -1,22 +1,21 @@
 Manifest-Version: 1.0
 Main-Class: org.apache.batik.apps.rasterizer.Main
-Class-Path: lib/batik-ext.jar
-            lib/batik-dom.jar
-            lib/batik-css.jar
-            lib/batik-svg-dom.jar
-            lib/batik-gvt.jar
-            lib/batik-parser.jar
-            lib/batik-script.jar
-            lib/batik-bridge.jar
-            lib/batik-anim.jar
-            lib/batik-transcoder.jar
-            lib/batik-awt-util.jar
-            lib/batik-codec.jar
-            lib/batik-util.jar
-            lib/batik-xml.jar
-            lib/xerces_2_5_0.jar
-            lib/xalan-2.6.0.jar
-            lib/xml-apis.jar
-            lib/xml-apis-ext.jar
-            lib/pdf-transcoder.jar
-            lib/js.jar
+Class-Path:  lib/batik-ext.jar
+  lib/batik-dom.jar
+  lib/batik-css.jar
+  lib/batik-svg-dom.jar
+  lib/batik-gvt.jar
+  lib/batik-parser.jar
+  lib/batik-script.jar
+  lib/batik-bridge.jar
+  lib/batik-anim.jar
+  lib/batik-transcoder.jar
+  lib/batik-awt-util.jar
+  lib/batik-codec.jar
+  lib/batik-util.jar
+  lib/batik-xml.jar
+  lib/xerces_2_5_0.jar
+  lib/xalan-2.6.0.jar
+  lib/xml-apis.jar
+  lib/xml-apis-ext.jar
+  lib/js.jar
\ No newline at end of file

Modified: xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-script.pom.template
URL: http://svn.apache.org/viewvc/xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-script.pom.template?rev=1647590&r1=1647589&r2=1647590&view=diff
==============================================================================
--- xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-script.pom.template (original)
+++ xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-script.pom.template Tue Dec 23 15:10:45 2014
@@ -74,22 +74,7 @@
   <dependencies>
     <dependency>
       <groupId>org.apache.xmlgraphics</groupId>
-      <artifactId>batik-bridge</artifactId>
-      <version>@version@</version>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.xmlgraphics</groupId>
-      <artifactId>batik-dom</artifactId>
-      <version>@version@</version>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.xmlgraphics</groupId>
-      <artifactId>batik-ext</artifactId>
-      <version>@version@</version>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.xmlgraphics</groupId>
-      <artifactId>batik-svg-dom</artifactId>
+      <artifactId>batik-anim</artifactId>
       <version>@version@</version>
     </dependency>
     <dependency>
@@ -98,11 +83,6 @@
       <version>@version@</version>
     </dependency>
     <dependency>
-      <groupId>org.apache.xmlgraphics</groupId>
-      <artifactId>batik-js</artifactId>
-      <version>@version@</version>
-    </dependency>
-    <dependency>
       <groupId>xml-apis</groupId>
       <artifactId>xml-apis</artifactId>
       <version>1.3.04</version>

Modified: xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-slideshow.pom.template
URL: http://svn.apache.org/viewvc/xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-slideshow.pom.template?rev=1647590&r1=1647589&r2=1647590&view=diff
==============================================================================
--- xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-slideshow.pom.template (original)
+++ xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-slideshow.pom.template Tue Dec 23 15:10:45 2014
@@ -84,12 +84,12 @@
     </dependency>
     <dependency>
       <groupId>xml-apis</groupId>
-      <artifactId>xml-apis</artifactId>
+      <artifactId>xml-apis-ext</artifactId>
       <version>1.3.04</version>
     </dependency>
     <dependency>
       <groupId>xml-apis</groupId>
-      <artifactId>xml-apis-ext</artifactId>
+      <artifactId>xml-apis</artifactId>
       <version>1.3.04</version>
     </dependency>
   </dependencies>

Modified: xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-squiggle.pom.template
URL: http://svn.apache.org/viewvc/xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-squiggle.pom.template?rev=1647590&r1=1647589&r2=1647590&view=diff
==============================================================================
--- xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-squiggle.pom.template (original)
+++ xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-squiggle.pom.template Tue Dec 23 15:10:45 2014
@@ -74,6 +74,11 @@
   <dependencies>
     <dependency>
       <groupId>org.apache.xmlgraphics</groupId>
+      <artifactId>batik-anim</artifactId>
+      <version>@version@</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.xmlgraphics</groupId>
       <artifactId>batik-awt-util</artifactId>
       <version>@version@</version>
     </dependency>
@@ -109,11 +114,6 @@
     </dependency>
     <dependency>
       <groupId>org.apache.xmlgraphics</groupId>
-      <artifactId>batik-svg-dom</artifactId>
-      <version>@version@</version>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.xmlgraphics</groupId>
       <artifactId>batik-swing</artifactId>
       <version>@version@</version>
     </dependency>
@@ -134,12 +134,12 @@
     </dependency>
     <dependency>
       <groupId>xml-apis</groupId>
-      <artifactId>xml-apis</artifactId>
+      <artifactId>xml-apis-ext</artifactId>
       <version>1.3.04</version>
     </dependency>
     <dependency>
       <groupId>xml-apis</groupId>
-      <artifactId>xml-apis-ext</artifactId>
+      <artifactId>xml-apis</artifactId>
       <version>1.3.04</version>
     </dependency>
   </dependencies>

Modified: xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-svg-dom.pom.template
URL: http://svn.apache.org/viewvc/xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-svg-dom.pom.template?rev=1647590&r1=1647589&r2=1647590&view=diff
==============================================================================
--- xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-svg-dom.pom.template (original)
+++ xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-svg-dom.pom.template Tue Dec 23 15:10:45 2014
@@ -74,11 +74,6 @@
   <dependencies>
     <dependency>
       <groupId>org.apache.xmlgraphics</groupId>
-      <artifactId>batik-anim</artifactId>
-      <version>@version@</version>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.xmlgraphics</groupId>
       <artifactId>batik-awt-util</artifactId>
       <version>@version@</version>
     </dependency>
@@ -109,12 +104,12 @@
     </dependency>
     <dependency>
       <groupId>xml-apis</groupId>
-      <artifactId>xml-apis</artifactId>
+      <artifactId>xml-apis-ext</artifactId>
       <version>1.3.04</version>
     </dependency>
     <dependency>
       <groupId>xml-apis</groupId>
-      <artifactId>xml-apis-ext</artifactId>
+      <artifactId>xml-apis</artifactId>
       <version>1.3.04</version>
     </dependency>
   </dependencies>

Modified: xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-swing.pom.template
URL: http://svn.apache.org/viewvc/xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-swing.pom.template?rev=1647590&r1=1647589&r2=1647590&view=diff
==============================================================================
--- xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-swing.pom.template (original)
+++ xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-swing.pom.template Tue Dec 23 15:10:45 2014
@@ -74,6 +74,11 @@
   <dependencies>
     <dependency>
       <groupId>org.apache.xmlgraphics</groupId>
+      <artifactId>batik-anim</artifactId>
+      <version>@version@</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.xmlgraphics</groupId>
       <artifactId>batik-awt-util</artifactId>
       <version>@version@</version>
     </dependency>
@@ -109,7 +114,7 @@
     </dependency>
     <dependency>
       <groupId>org.apache.xmlgraphics</groupId>
-      <artifactId>batik-svg-dom</artifactId>
+      <artifactId>batik-script</artifactId>
       <version>@version@</version>
     </dependency>
     <dependency>
@@ -119,12 +124,12 @@
     </dependency>
     <dependency>
       <groupId>xml-apis</groupId>
-      <artifactId>xml-apis</artifactId>
+      <artifactId>xml-apis-ext</artifactId>
       <version>1.3.04</version>
     </dependency>
     <dependency>
       <groupId>xml-apis</groupId>
-      <artifactId>xml-apis-ext</artifactId>
+      <artifactId>xml-apis</artifactId>
       <version>1.3.04</version>
     </dependency>
   </dependencies>

Modified: xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-transcoder.pom.template
URL: http://svn.apache.org/viewvc/xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-transcoder.pom.template?rev=1647590&r1=1647589&r2=1647590&view=diff
==============================================================================
--- xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-transcoder.pom.template (original)
+++ xmlgraphics/batik/branches/submodules_cyclic_deps/sources/batik-transcoder.pom.template Tue Dec 23 15:10:45 2014
@@ -74,38 +74,8 @@
   <dependencies>
     <dependency>
       <groupId>org.apache.xmlgraphics</groupId>
-      <artifactId>fop</artifactId>
-      <version>0.94</version>
-      <exclusions>
-        <exclusion>
-          <groupId>batik</groupId>
-          <artifactId>batik-svg-dom</artifactId>
-        </exclusion>
-        <exclusion>
-          <groupId>batik</groupId>
-          <artifactId>batik-bridge</artifactId>
-        </exclusion>
-        <exclusion>
-          <groupId>batik</groupId>
-          <artifactId>batik-awt-util</artifactId>
-        </exclusion>
-        <exclusion>
-          <groupId>batik</groupId>
-          <artifactId>batik-gvt</artifactId>
-        </exclusion>
-        <exclusion>
-          <groupId>batik</groupId>
-          <artifactId>batik-transcoder</artifactId>
-        </exclusion>
-        <exclusion>
-          <groupId>batik</groupId>
-          <artifactId>batik-extension</artifactId>
-        </exclusion>
-        <exclusion>
-          <groupId>batik</groupId>
-          <artifactId>batik-ext</artifactId>
-        </exclusion>
-      </exclusions>
+      <artifactId>batik-anim</artifactId>
+      <version>@version@</version>
     </dependency>
     <dependency>
       <groupId>org.apache.xmlgraphics</groupId>
@@ -129,11 +99,6 @@
     </dependency>
     <dependency>
       <groupId>org.apache.xmlgraphics</groupId>
-      <artifactId>batik-svg-dom</artifactId>
-      <version>@version@</version>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.xmlgraphics</groupId>
       <artifactId>batik-svggen</artifactId>
       <version>@version@</version>
     </dependency>
@@ -149,12 +114,12 @@
     </dependency>
     <dependency>
       <groupId>xml-apis</groupId>
-      <artifactId>xml-apis</artifactId>
+      <artifactId>xml-apis-ext</artifactId>
       <version>1.3.04</version>
     </dependency>
     <dependency>
       <groupId>xml-apis</groupId>
-      <artifactId>xml-apis-ext</artifactId>
+      <artifactId>xml-apis</artifactId>
       <version>1.3.04</version>
     </dependency>
   </dependencies>

Modified: xmlgraphics/batik/branches/submodules_cyclic_deps/sources/org/apache/batik/anim/AbstractAnimation.java
URL: http://svn.apache.org/viewvc/xmlgraphics/batik/branches/submodules_cyclic_deps/sources/org/apache/batik/anim/AbstractAnimation.java?rev=1647590&r1=1647589&r2=1647590&view=diff
==============================================================================
--- xmlgraphics/batik/branches/submodules_cyclic_deps/sources/org/apache/batik/anim/AbstractAnimation.java (original)
+++ xmlgraphics/batik/branches/submodules_cyclic_deps/sources/org/apache/batik/anim/AbstractAnimation.java Tue Dec 23 15:10:45 2014
@@ -18,9 +18,9 @@
  */
 package org.apache.batik.anim;
 
+import org.apache.batik.anim.dom.AnimatableElement;
 import org.apache.batik.anim.timing.TimedElement;
 import org.apache.batik.anim.values.AnimatableValue;
-import org.apache.batik.dom.anim.AnimatableElement;
 
 // import org.apache.batik.anim.timing.Trace;
 

Modified: xmlgraphics/batik/branches/submodules_cyclic_deps/sources/org/apache/batik/anim/AnimationEngine.java
URL: http://svn.apache.org/viewvc/xmlgraphics/batik/branches/submodules_cyclic_deps/sources/org/apache/batik/anim/AnimationEngine.java?rev=1647590&r1=1647589&r2=1647590&view=diff
==============================================================================
--- xmlgraphics/batik/branches/submodules_cyclic_deps/sources/org/apache/batik/anim/AnimationEngine.java (original)
+++ xmlgraphics/batik/branches/submodules_cyclic_deps/sources/org/apache/batik/anim/AnimationEngine.java Tue Dec 23 15:10:45 2014
@@ -23,12 +23,12 @@ import java.util.HashMap;
 import java.util.Iterator;
 import java.util.Map;
 
+import org.apache.batik.anim.dom.AnimationTarget;
+import org.apache.batik.anim.dom.AnimationTargetListener;
 import org.apache.batik.anim.timing.TimedDocumentRoot;
 import org.apache.batik.anim.timing.TimedElement;
 import org.apache.batik.anim.timing.TimegraphListener;
 import org.apache.batik.anim.values.AnimatableValue;
-import org.apache.batik.dom.anim.AnimationTarget;
-import org.apache.batik.dom.anim.AnimationTargetListener;
 import org.apache.batik.util.DoublyIndexedTable;
 
 import org.w3c.dom.Document;

Modified: xmlgraphics/batik/branches/submodules_cyclic_deps/sources/org/apache/batik/anim/ColorAnimation.java
URL: http://svn.apache.org/viewvc/xmlgraphics/batik/branches/submodules_cyclic_deps/sources/org/apache/batik/anim/ColorAnimation.java?rev=1647590&r1=1647589&r2=1647590&view=diff
==============================================================================
--- xmlgraphics/batik/branches/submodules_cyclic_deps/sources/org/apache/batik/anim/ColorAnimation.java (original)
+++ xmlgraphics/batik/branches/submodules_cyclic_deps/sources/org/apache/batik/anim/ColorAnimation.java Tue Dec 23 15:10:45 2014
@@ -18,9 +18,9 @@
  */
 package org.apache.batik.anim;
 
+import org.apache.batik.anim.dom.AnimatableElement;
 import org.apache.batik.anim.timing.TimedElement;
 import org.apache.batik.anim.values.AnimatableValue;
-import org.apache.batik.dom.anim.AnimatableElement;
 
 /**
  * An animation class for 'animateColor' animations.

Modified: xmlgraphics/batik/branches/submodules_cyclic_deps/sources/org/apache/batik/anim/InterpolatingAnimation.java
URL: http://svn.apache.org/viewvc/xmlgraphics/batik/branches/submodules_cyclic_deps/sources/org/apache/batik/anim/InterpolatingAnimation.java?rev=1647590&r1=1647589&r2=1647590&view=diff
==============================================================================
--- xmlgraphics/batik/branches/submodules_cyclic_deps/sources/org/apache/batik/anim/InterpolatingAnimation.java (original)
+++ xmlgraphics/batik/branches/submodules_cyclic_deps/sources/org/apache/batik/anim/InterpolatingAnimation.java Tue Dec 23 15:10:45 2014
@@ -18,8 +18,8 @@
  */
 package org.apache.batik.anim;
 
+import org.apache.batik.anim.dom.AnimatableElement;
 import org.apache.batik.anim.timing.TimedElement;
-import org.apache.batik.dom.anim.AnimatableElement;
 import org.apache.batik.ext.awt.geom.Cubic;
 import org.apache.batik.util.SMILConstants;
 

Modified: xmlgraphics/batik/branches/submodules_cyclic_deps/sources/org/apache/batik/anim/MotionAnimation.java
URL: http://svn.apache.org/viewvc/xmlgraphics/batik/branches/submodules_cyclic_deps/sources/org/apache/batik/anim/MotionAnimation.java?rev=1647590&r1=1647589&r2=1647590&view=diff
==============================================================================
--- xmlgraphics/batik/branches/submodules_cyclic_deps/sources/org/apache/batik/anim/MotionAnimation.java (original)
+++ xmlgraphics/batik/branches/submodules_cyclic_deps/sources/org/apache/batik/anim/MotionAnimation.java Tue Dec 23 15:10:45 2014
@@ -20,11 +20,11 @@ package org.apache.batik.anim;
 
 import java.awt.geom.Point2D;
 
+import org.apache.batik.anim.dom.AnimatableElement;
 import org.apache.batik.anim.timing.TimedElement;
 import org.apache.batik.anim.values.AnimatableAngleValue;
 import org.apache.batik.anim.values.AnimatableMotionPointValue;
 import org.apache.batik.anim.values.AnimatableValue;
-import org.apache.batik.dom.anim.AnimatableElement;
 import org.apache.batik.ext.awt.geom.Cubic;
 import org.apache.batik.ext.awt.geom.ExtendedGeneralPath;
 import org.apache.batik.ext.awt.geom.ExtendedPathIterator;

Modified: xmlgraphics/batik/branches/submodules_cyclic_deps/sources/org/apache/batik/anim/SetAnimation.java
URL: http://svn.apache.org/viewvc/xmlgraphics/batik/branches/submodules_cyclic_deps/sources/org/apache/batik/anim/SetAnimation.java?rev=1647590&r1=1647589&r2=1647590&view=diff
==============================================================================
--- xmlgraphics/batik/branches/submodules_cyclic_deps/sources/org/apache/batik/anim/SetAnimation.java (original)
+++ xmlgraphics/batik/branches/submodules_cyclic_deps/sources/org/apache/batik/anim/SetAnimation.java Tue Dec 23 15:10:45 2014
@@ -19,8 +19,8 @@
 package org.apache.batik.anim;
 
 import org.apache.batik.anim.values.AnimatableValue;
+import org.apache.batik.anim.dom.AnimatableElement;
 import org.apache.batik.anim.timing.TimedElement;
-import org.apache.batik.dom.anim.AnimatableElement;
 
 /**
  * An animation class for 'set' animations.

Modified: xmlgraphics/batik/branches/submodules_cyclic_deps/sources/org/apache/batik/anim/SimpleAnimation.java
URL: http://svn.apache.org/viewvc/xmlgraphics/batik/branches/submodules_cyclic_deps/sources/org/apache/batik/anim/SimpleAnimation.java?rev=1647590&r1=1647589&r2=1647590&view=diff
==============================================================================
--- xmlgraphics/batik/branches/submodules_cyclic_deps/sources/org/apache/batik/anim/SimpleAnimation.java (original)
+++ xmlgraphics/batik/branches/submodules_cyclic_deps/sources/org/apache/batik/anim/SimpleAnimation.java Tue Dec 23 15:10:45 2014
@@ -20,9 +20,9 @@ package org.apache.batik.anim;
 
 import java.awt.geom.Point2D;
 
+import org.apache.batik.anim.dom.AnimatableElement;
 import org.apache.batik.anim.timing.TimedElement;
 import org.apache.batik.anim.values.AnimatableValue;
-import org.apache.batik.dom.anim.AnimatableElement;
 import org.apache.batik.ext.awt.geom.Cubic;
 import org.apache.batik.util.SMILConstants;
 

Modified: xmlgraphics/batik/branches/submodules_cyclic_deps/sources/org/apache/batik/anim/TransformAnimation.java
URL: http://svn.apache.org/viewvc/xmlgraphics/batik/branches/submodules_cyclic_deps/sources/org/apache/batik/anim/TransformAnimation.java?rev=1647590&r1=1647589&r2=1647590&view=diff
==============================================================================
--- xmlgraphics/batik/branches/submodules_cyclic_deps/sources/org/apache/batik/anim/TransformAnimation.java (original)
+++ xmlgraphics/batik/branches/submodules_cyclic_deps/sources/org/apache/batik/anim/TransformAnimation.java Tue Dec 23 15:10:45 2014
@@ -18,10 +18,10 @@
  */
 package org.apache.batik.anim;
 
+import org.apache.batik.anim.dom.AnimatableElement;
 import org.apache.batik.anim.timing.TimedElement;
 import org.apache.batik.anim.values.AnimatableValue;
 import org.apache.batik.anim.values.AnimatableTransformListValue;
-import org.apache.batik.dom.anim.AnimatableElement;
 
 import org.w3c.dom.svg.SVGTransform;
 

Added: xmlgraphics/batik/branches/submodules_cyclic_deps/sources/org/apache/batik/anim/dom/AbstractElement.java
URL: http://svn.apache.org/viewvc/xmlgraphics/batik/branches/submodules_cyclic_deps/sources/org/apache/batik/anim/dom/AbstractElement.java?rev=1647590&view=auto
==============================================================================
--- xmlgraphics/batik/branches/submodules_cyclic_deps/sources/org/apache/batik/anim/dom/AbstractElement.java (added)
+++ xmlgraphics/batik/branches/submodules_cyclic_deps/sources/org/apache/batik/anim/dom/AbstractElement.java Tue Dec 23 15:10:45 2014
@@ -0,0 +1,349 @@
+/*
+
+   Licensed to the Apache Software Foundation (ASF) under one or more
+   contributor license agreements.  See the NOTICE file distributed with
+   this work for additional information regarding copyright ownership.
+   The ASF licenses this file to You 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 org.apache.batik.anim.dom;
+
+import org.apache.batik.css.engine.CSSNavigableNode;
+import org.apache.batik.dom.AbstractAttr;
+import org.apache.batik.dom.AbstractDocument;
+import org.apache.batik.dom.events.NodeEventTarget;
+import org.apache.batik.dom.svg.LiveAttributeValue;
+import org.apache.batik.util.DoublyIndexedTable;
+import org.apache.batik.util.SVGConstants;
+
+import org.w3c.dom.Attr;
+import org.w3c.dom.DOMException;
+import org.w3c.dom.NamedNodeMap;
+import org.w3c.dom.Node;
+import org.w3c.dom.events.MutationEvent;
+
+/**
+ * This class provides a superclass to implement an SVG element, or
+ * an element interoperable with the SVG elements.
+ *
+ * @author <a href="mailto:stephane@hillion.org">Stephane Hillion</a>
+ * @version $Id$
+ */
+public abstract class AbstractElement
+        extends org.apache.batik.dom.AbstractElement
+        implements NodeEventTarget, CSSNavigableNode, SVGConstants {
+
+    /**
+     * The live attribute values.
+     */
+    protected transient DoublyIndexedTable liveAttributeValues =
+        new DoublyIndexedTable();
+
+    /**
+     * Creates a new Element object.
+     */
+    protected AbstractElement() {
+    }
+
+    /**
+     * Creates a new Element object.
+     * @param prefix The namespace prefix.
+     * @param owner  The owner document.
+     */
+    protected AbstractElement(String prefix, AbstractDocument owner) {
+        ownerDocument = owner;
+        setPrefix(prefix);
+        initializeAttributes();
+    }
+
+    // CSSNavigableNode ///////////////////////////////////////////////////
+
+    /**
+     * Returns the CSS parent node of this node.
+     */
+    public Node getCSSParentNode() {
+        return getXblParentNode();
+    }
+
+    /**
+     * Returns the CSS previous sibling node of this node.
+     */
+    public Node getCSSPreviousSibling() {
+        return getXblPreviousSibling();
+    }
+
+    /**
+     * Returns the CSS next sibling node of this node.
+     */
+    public Node getCSSNextSibling() {
+        return getXblNextSibling();
+    }
+
+    /**
+     * Returns the CSS first child node of this node.
+     */
+    public Node getCSSFirstChild() {
+        return getXblFirstChild();
+    }
+
+    /**
+     * Returns the CSS last child of this node.
+     */
+    public Node getCSSLastChild() {
+        return getXblLastChild();
+    }
+
+    /**
+     * Returns whether this node is the root of a (conceptual) hidden tree
+     * that selectors will not work across.
+     */
+    public boolean isHiddenFromSelectors() {
+        return false;
+    }
+
+    // Attributes /////////////////////////////////////////////////////////
+
+    public void fireDOMAttrModifiedEvent(String name, Attr node, String oldv,
+                                         String newv, short change) {
+        super.fireDOMAttrModifiedEvent(name, node, oldv, newv, change);
+        // This handles the SVG 1.2 behaviour where setting the value of
+        // 'id' must also change 'xml:id', and vice versa.
+        if (((SVGOMDocument) ownerDocument).isSVG12
+                && (change == MutationEvent.ADDITION
+                    || change == MutationEvent.MODIFICATION)) {
+            if (node.getNamespaceURI() == null
+                    && node.getNodeName().equals(SVG_ID_ATTRIBUTE)) {
+                Attr a =
+                    getAttributeNodeNS(XML_NAMESPACE_URI, SVG_ID_ATTRIBUTE);
+                if (a == null) {
+                    setAttributeNS(XML_NAMESPACE_URI, XML_ID_QNAME, newv);
+                } else if (!a.getNodeValue().equals(newv)) {
+                    a.setNodeValue(newv);
+                }
+            } else if (node.getNodeName().equals(XML_ID_QNAME)) {
+                Attr a = getAttributeNodeNS(null, SVG_ID_ATTRIBUTE);
+                if (a == null) {
+                    setAttributeNS(null, SVG_ID_ATTRIBUTE, newv);
+                } else if (!a.getNodeValue().equals(newv)) {
+                    a.setNodeValue(newv);
+                }
+            }
+        }
+    }
+
+    /**
+     * Returns the live attribute value associated with given
+     * attribute, if any.
+     * @param ns The attribute's namespace.
+     * @param ln The attribute's local name.
+     */
+    public LiveAttributeValue getLiveAttributeValue(String ns, String ln) {
+//         if (liveAttributeValues == null) {
+//             return null;
+//         }
+        return (LiveAttributeValue)liveAttributeValues.get(ns, ln);
+    }
+
+    /**
+     * Associates a live attribute value to this element.
+     * @param ns The attribute's namespace.
+     * @param ln The attribute's local name.
+     * @param val The live value.
+     */
+    public void putLiveAttributeValue(String ns, String ln,
+                                      LiveAttributeValue val) {
+//         if (liveAttributeValues == null) {
+//             liveAttributeValues = new SoftDoublyIndexedTable();
+//         }
+        liveAttributeValues.put(ns, ln, val);
+    }
+
+    /**
+     * Returns the AttributeInitializer for this element type.
+     * @return null if this element has no attribute with a default value.
+     */
+    protected AttributeInitializer getAttributeInitializer() {
+        return null;
+    }
+
+    /**
+     * Initializes the attributes of this element to their default value.
+     */
+    protected void initializeAttributes() {
+        AttributeInitializer ai = getAttributeInitializer();
+        if (ai != null) {
+            ai.initializeAttributes(this);
+        }
+    }
+
+    /**
+     * Resets an attribute to the default value.
+     * @return true if a default value is known for the given attribute.
+     */
+    protected boolean resetAttribute(String ns, String prefix, String ln) {
+        AttributeInitializer ai = getAttributeInitializer();
+        if (ai == null) {
+            return false;
+        }
+        return ai.resetAttribute(this, ns, prefix, ln);
+    }
+
+    /**
+     * Creates the attribute list.
+     */
+    protected NamedNodeMap createAttributes() {
+        return new ExtendedNamedNodeHashMap();
+    }
+
+    /**
+     * Sets an unspecified attribute.
+     * @param nsURI The attribute namespace URI.
+     * @param name The attribute's qualified name.
+     * @param value The attribute's default value.
+    */
+    public void setUnspecifiedAttribute(String nsURI, String name,
+                                        String value) {
+        if (attributes == null) {
+            attributes = createAttributes();
+        }
+        ((ExtendedNamedNodeHashMap)attributes).
+            setUnspecifiedAttribute(nsURI, name, value);
+    }
+
+    /**
+     * Called when an attribute has been added.
+     */
+    protected void attrAdded(Attr node, String newv) {
+        LiveAttributeValue lav = getLiveAttributeValue(node);
+        if (lav != null) {
+            lav.attrAdded(node, newv);
+        }
+    }
+
+    /**
+     * Called when an attribute has been modified.
+     */
+    protected void attrModified(Attr node, String oldv, String newv) {
+        LiveAttributeValue lav = getLiveAttributeValue(node);
+        if (lav != null) {
+            lav.attrModified(node, oldv, newv);
+        }
+    }
+
+    /**
+     * Called when an attribute has been removed.
+     */
+    protected void attrRemoved(Attr node, String oldv) {
+        LiveAttributeValue lav = getLiveAttributeValue(node);
+        if (lav != null) {
+            lav.attrRemoved(node, oldv);
+        }
+    }
+
+    /**
+     * Gets Returns the live attribute value associated with given
+     * attribute, if any.
+     */
+    private LiveAttributeValue getLiveAttributeValue(Attr node) {
+        String ns = node.getNamespaceURI();
+        return getLiveAttributeValue(ns, (ns == null)
+                                     ? node.getNodeName()
+                                     : node.getLocalName());
+    }
+
+    // Importation ////////////////////////////////////////////////////
+
+    /**
+     * Exports this node to the given document.
+     */
+    protected Node export(Node n, AbstractDocument d) {
+        super.export(n, d);
+        ((AbstractElement)n).initializeAttributes();
+
+        super.export(n, d);
+        return n;
+    }
+
+    /**
+     * Deeply exports this node to the given document.
+     */
+    protected Node deepExport(Node n, AbstractDocument d) {
+        super.export(n, d);
+        ((AbstractElement)n).initializeAttributes();
+
+        super.deepExport(n, d);
+        return n;
+    }
+
+    /**
+     * An implementation of the {@link NamedNodeMap}.
+     */
+    protected class ExtendedNamedNodeHashMap extends NamedNodeHashMap {
+
+        /**
+         * Creates a new ExtendedNamedNodeHashMap object.
+         */
+        public ExtendedNamedNodeHashMap() {
+        }
+
+        /**
+         * Adds an unspecified attribute to the map.
+         *
+         * @param nsURI The attribute namespace URI.
+         * @param name The attribute's qualified name.
+         * @param value The attribute's default value.
+         */
+        public void setUnspecifiedAttribute( String nsURI, String name,
+                                             String value ) {
+            Attr attr = getOwnerDocument().createAttributeNS( nsURI, name );
+            attr.setValue( value );
+            ( (AbstractAttr)attr ).setSpecified( false );
+            setNamedItemNS( attr );
+        }
+
+        /**
+         * <b>DOM</b>: Implements {@link NamedNodeMap#removeNamedItemNS(String,String)}.
+         */
+        public Node removeNamedItemNS( String namespaceURI, String localName )
+                throws DOMException {
+            if ( isReadonly() ) {
+                throw createDOMException
+                        ( DOMException.NO_MODIFICATION_ALLOWED_ERR,
+                                "readonly.node.map",
+                                new Object[]{} );
+            }
+            if ( localName == null ) {
+                throw createDOMException( DOMException.NOT_FOUND_ERR,
+                        "attribute.missing",
+                        new Object[]{""} );
+            }
+            AbstractAttr n = (AbstractAttr)remove( namespaceURI, localName );
+            if ( n == null ) {
+                throw createDOMException( DOMException.NOT_FOUND_ERR,
+                        "attribute.missing",
+                        new Object[]{localName} );
+            }
+            n.setOwnerElement( null );
+            String prefix = n.getPrefix();
+
+            // Reset the attribute to its default value
+            if ( !resetAttribute( namespaceURI, prefix, localName ) ) {
+                // Mutation event
+                fireDOMAttrModifiedEvent( n.getNodeName(), n,
+                        n.getNodeValue(), "",
+                        MutationEvent.REMOVAL );
+            }
+            return n;
+        }
+    }
+}

Added: xmlgraphics/batik/branches/submodules_cyclic_deps/sources/org/apache/batik/anim/dom/AbstractSVGAnimatedLength.java
URL: http://svn.apache.org/viewvc/xmlgraphics/batik/branches/submodules_cyclic_deps/sources/org/apache/batik/anim/dom/AbstractSVGAnimatedLength.java?rev=1647590&view=auto
==============================================================================
--- xmlgraphics/batik/branches/submodules_cyclic_deps/sources/org/apache/batik/anim/dom/AbstractSVGAnimatedLength.java (added)
+++ xmlgraphics/batik/branches/submodules_cyclic_deps/sources/org/apache/batik/anim/dom/AbstractSVGAnimatedLength.java Tue Dec 23 15:10:45 2014
@@ -0,0 +1,431 @@
+/*
+
+   Licensed to the Apache Software Foundation (ASF) under one or more
+   contributor license agreements.  See the NOTICE file distributed with
+   this work for additional information regarding copyright ownership.
+   The ASF licenses this file to You 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 org.apache.batik.anim.dom;
+
+import org.apache.batik.anim.values.AnimatableLengthValue;
+import org.apache.batik.anim.values.AnimatableValue;
+import org.apache.batik.dom.svg.LiveAttributeException;
+import org.apache.batik.dom.svg.LiveAttributeValue;
+import org.apache.batik.parser.UnitProcessor;
+
+import org.w3c.dom.Attr;
+import org.w3c.dom.DOMException;
+import org.w3c.dom.svg.SVGAnimatedLength;
+import org.w3c.dom.svg.SVGLength;
+
+/**
+ * This class provides an implementation of the {@link
+ * SVGAnimatedLength} interface.
+ *
+ * @author <a href="mailto:stephane@hillion.org">Stephane Hillion</a>
+ * @version $Id$
+ */
+public abstract class AbstractSVGAnimatedLength
+    extends    AbstractSVGAnimatedValue
+    implements SVGAnimatedLength,
+               LiveAttributeValue {
+
+    /**
+     * This constant represents horizontal lengths.
+     */
+    public static final short HORIZONTAL_LENGTH =
+        UnitProcessor.HORIZONTAL_LENGTH;
+
+    /**
+     * This constant represents vertical lengths.
+     */
+    public static final short VERTICAL_LENGTH =
+        UnitProcessor.VERTICAL_LENGTH;
+
+    /**
+     * This constant represents other lengths.
+     */
+    public static final short OTHER_LENGTH =
+        UnitProcessor.OTHER_LENGTH;
+
+    /**
+     * This length's direction.
+     */
+    protected short direction;
+
+    /**
+     * The base value.
+     */
+    protected BaseSVGLength baseVal;
+
+    /**
+     * The current animated value.
+     */
+    protected AnimSVGLength animVal;
+
+    /**
+     * Whether the value is changing.
+     */
+    protected boolean changing;
+
+    /**
+     * Whether the value must be non-negative.
+     */
+    protected boolean nonNegative;
+
+    /**
+     * Creates a new SVGAnimatedLength.
+     * @param elt The associated element.
+     * @param ns The attribute's namespace URI.
+     * @param ln The attribute's local name.
+     * @param dir The length's direction.
+     * @param nonneg Whether the length must be non-negative.
+     */
+    public AbstractSVGAnimatedLength(AbstractElement elt,
+                                     String ns,
+                                     String ln,
+                                     short dir,
+                                     boolean nonneg) {
+        super(elt, ns, ln);
+        direction = dir;
+        nonNegative = nonneg;
+    }
+
+    /**
+     * @return the default value to use when the associated attribute
+     * was not specified.
+     */
+    protected abstract String getDefaultValue();
+
+    /**
+     * <b>DOM</b>: Implements {@link SVGAnimatedLength#getBaseVal()}.
+     */
+    public SVGLength getBaseVal() {
+        if (baseVal == null) {
+            baseVal = new BaseSVGLength(direction);
+        }
+        return baseVal;
+    }
+
+    /**
+     * <b>DOM</b>: Implements {@link SVGAnimatedLength#getAnimVal()}.
+     */
+    public SVGLength getAnimVal() {
+        if (animVal == null) {
+            animVal = new AnimSVGLength(direction);
+        }
+        return animVal;
+    }
+
+    /**
+     * Gets the current animated length value.  If the attribute is missing
+     * or malformed, an exception is thrown.
+     */
+    public float getCheckedValue() {
+        if (hasAnimVal) {
+            if (animVal == null) {
+                animVal = new AnimSVGLength(direction);
+            }
+            if (nonNegative && animVal.value < 0) {
+                throw new LiveAttributeException
+                    (element, localName,
+                     LiveAttributeException.ERR_ATTRIBUTE_NEGATIVE,
+                     animVal.getValueAsString());
+            }
+            return animVal.getValue();
+        } else {
+            if (baseVal == null) {
+                baseVal = new BaseSVGLength(direction);
+            }
+            baseVal.revalidate();
+            if (baseVal.missing) {
+                throw new LiveAttributeException
+                    (element, localName,
+                     LiveAttributeException.ERR_ATTRIBUTE_MISSING, null);
+            } else if (baseVal.unitType ==
+                        SVGLength.SVG_LENGTHTYPE_UNKNOWN) {
+                throw new LiveAttributeException
+                    (element, localName,
+                     LiveAttributeException.ERR_ATTRIBUTE_MALFORMED,
+                     baseVal.getValueAsString());
+            }
+            if (nonNegative && baseVal.value < 0) {
+                throw new LiveAttributeException
+                    (element, localName,
+                     LiveAttributeException.ERR_ATTRIBUTE_NEGATIVE,
+                     baseVal.getValueAsString());
+            }
+            return baseVal.getValue();
+        }
+    }
+
+    /**
+     * Updates the animated value with the given {@link AnimatableValue}.
+     */
+    protected void updateAnimatedValue(AnimatableValue val) {
+        if (val == null) {
+            hasAnimVal = false;
+        } else {
+            hasAnimVal = true;
+            AnimatableLengthValue animLength = (AnimatableLengthValue) val;
+            if (animVal == null) {
+                animVal = new AnimSVGLength(direction);
+            }
+            animVal.setAnimatedValue(animLength.getLengthType(),
+                                     animLength.getLengthValue());
+        }
+        fireAnimatedAttributeListeners();
+    }
+
+    /**
+     * Returns the base value of the attribute as an {@link AnimatableValue}.
+     */
+    public AnimatableValue getUnderlyingValue(AnimationTarget target) {
+        SVGLength base = getBaseVal();
+        return new AnimatableLengthValue
+            (target, base.getUnitType(), base.getValueInSpecifiedUnits(),
+             target.getPercentageInterpretation
+                 (getNamespaceURI(), getLocalName(), false));
+    }
+
+    /**
+     * Called when an Attr node has been added.
+     */
+    public void attrAdded(Attr node, String newv) {
+        attrChanged();
+    }
+
+    /**
+     * Called when an Attr node has been modified.
+     */
+    public void attrModified(Attr node, String oldv, String newv) {
+        attrChanged();
+    }
+
+    /**
+     * Called when an Attr node has been removed.
+     */
+    public void attrRemoved(Attr node, String oldv) {
+        attrChanged();
+    }
+
+    /**
+     * Called when the attribute has changed in some way.
+     */
+    protected void attrChanged() {
+        if (!changing && baseVal != null) {
+            baseVal.invalidate();
+        }
+        fireBaseAttributeListeners();
+        if (!hasAnimVal) {
+            fireAnimatedAttributeListeners();
+        }
+    }
+
+    /**
+     * This class represents the SVGLength returned by {@link AbstractSVGAnimatedLength#getBaseVal() }.
+     */
+    protected class BaseSVGLength extends AbstractSVGLength {
+
+        /**
+         * Whether this length is valid.
+         */
+        protected boolean valid;
+
+        /**
+         * Whether the attribute is missing.
+         */
+        protected boolean missing;
+
+        /**
+         * Creates a new BaseSVGLength.
+         * @param direction is one of HORIZONTAL_LENGTH, VERTICAL_LENGTH, or OTHER_LENGTH
+         */
+        public BaseSVGLength(short direction) {
+            super(direction);
+        }
+
+        /**
+         * Invalidates this length.
+         */
+        public void invalidate() {
+            valid = false;
+        }
+
+        /**
+         * Resets the value of the associated attribute.
+         */
+        protected void reset() {
+            try {
+                changing = true;
+                valid = true;
+                String value = getValueAsString();
+                element.setAttributeNS(namespaceURI, localName, value);
+            } finally {
+                changing = false;
+            }
+        }
+
+        /**
+         * Initializes the length, if needed.
+         */
+        protected void revalidate() {
+            if (valid) {
+                return;
+            }
+
+            missing = false;
+            valid = true;
+
+            Attr attr = element.getAttributeNodeNS(namespaceURI, localName);
+            String s;
+            if (attr == null) {
+                s = getDefaultValue();
+                if (s == null) {
+                    missing = true;
+                    return;
+                }
+            } else {
+                s = attr.getValue();
+            }
+
+            parse(s);
+        }
+
+        /**
+         * Returns the element this length is associated with.
+         */
+        protected SVGOMElement getAssociatedElement() {
+            return (SVGOMElement)element;
+        }
+    }
+
+    /**
+     * This class represents the SVGLength returned by {@link AbstractSVGAnimatedLength#getAnimVal()}.
+     */
+    protected class AnimSVGLength extends AbstractSVGLength {
+
+        /**
+         * Creates a new AnimSVGLength.
+         * @param direction is one of HORIZONTAL_LENGTH, VERTICAL_LENGTH, or OTHER_LENGTH
+         */
+        public AnimSVGLength(short direction) {
+            super(direction);
+        }
+
+        /**
+         * <b>DOM</b>: Implements {@link SVGLength#getUnitType()}.
+         */
+        public short getUnitType() {
+            if (hasAnimVal) {
+                return super.getUnitType();
+            }
+            return getBaseVal().getUnitType();
+        }
+
+        /**
+         * <b>DOM</b>: Implements {@link SVGLength#getValue()}.
+         */
+        public float getValue() {
+            if (hasAnimVal) {
+                return super.getValue();
+            }
+            return getBaseVal().getValue();
+        }
+
+        /**
+         * <b>DOM</b>: Implements {@link SVGLength#getValueInSpecifiedUnits()}.
+         */
+        public float getValueInSpecifiedUnits() {
+            if (hasAnimVal) {
+                return super.getValueInSpecifiedUnits();
+            }
+            return getBaseVal().getValueInSpecifiedUnits();
+        }
+
+        /**
+         * <b>DOM</b>: Implements {@link SVGLength#getValueAsString()}.
+         */
+        public String getValueAsString() {
+            if (hasAnimVal) {
+                return super.getValueAsString();
+            }
+            return getBaseVal().getValueAsString();
+        }
+
+        /**
+         * <b>DOM</b>: Implements {@link SVGLength#setValue(float)}.
+         */
+        public void setValue(float value) throws DOMException {
+            throw element.createDOMException
+                (DOMException.NO_MODIFICATION_ALLOWED_ERR, "readonly.length",
+                 null);
+        }
+
+        /**
+         * <b>DOM</b>: Implements {@link
+         * SVGLength#setValueInSpecifiedUnits(float)}.
+         */
+        public void setValueInSpecifiedUnits(float value) throws DOMException {
+            throw element.createDOMException
+                (DOMException.NO_MODIFICATION_ALLOWED_ERR, "readonly.length",
+                 null);
+        }
+
+        /**
+         * <b>DOM</b>: Implements {@link SVGLength#setValueAsString(String)}.
+         */
+        public void setValueAsString(String value) throws DOMException {
+            throw element.createDOMException
+                (DOMException.NO_MODIFICATION_ALLOWED_ERR, "readonly.length",
+                 null);
+        }
+
+        /**
+         * <b>DOM</b>: Implements {@link
+         * SVGLength#newValueSpecifiedUnits(short,float)}.
+         */
+        public void newValueSpecifiedUnits(short unit, float value) {
+            throw element.createDOMException
+                (DOMException.NO_MODIFICATION_ALLOWED_ERR, "readonly.length",
+                 null);
+        }
+
+        /**
+         * <b>DOM</b>: Implements {@link
+         * SVGLength#convertToSpecifiedUnits(short)}.
+         */
+        public void convertToSpecifiedUnits(short unit) {
+            throw element.createDOMException
+                (DOMException.NO_MODIFICATION_ALLOWED_ERR, "readonly.length",
+                 null);
+        }
+
+        /**
+         * Returns the element this length is associated with.
+         */
+        protected SVGOMElement getAssociatedElement() {
+            return (SVGOMElement) element;
+        }
+
+        /**
+         * Sets the animated value.
+         * @param type one of the values defines in org.w3c.dom.svg.SVGLength
+         * @param val the length
+         */
+        protected void setAnimatedValue(int type, float val) {
+            super.newValueSpecifiedUnits((short) type, val);
+        }
+    }
+}

Added: xmlgraphics/batik/branches/submodules_cyclic_deps/sources/org/apache/batik/anim/dom/AbstractSVGAnimatedValue.java
URL: http://svn.apache.org/viewvc/xmlgraphics/batik/branches/submodules_cyclic_deps/sources/org/apache/batik/anim/dom/AbstractSVGAnimatedValue.java?rev=1647590&view=auto
==============================================================================
--- xmlgraphics/batik/branches/submodules_cyclic_deps/sources/org/apache/batik/anim/dom/AbstractSVGAnimatedValue.java (added)
+++ xmlgraphics/batik/branches/submodules_cyclic_deps/sources/org/apache/batik/anim/dom/AbstractSVGAnimatedValue.java Tue Dec 23 15:10:45 2014
@@ -0,0 +1,135 @@
+/*
+
+   Licensed to the Apache Software Foundation (ASF) under one or more
+   contributor license agreements.  See the NOTICE file distributed with
+   this work for additional information regarding copyright ownership.
+   The ASF licenses this file to You 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 org.apache.batik.anim.dom;
+
+import java.util.Iterator;
+import java.util.LinkedList;
+
+import org.apache.batik.anim.values.AnimatableValue;
+
+/**
+ * An abstract base class for the <code>SVGAnimated*</code> classes, that
+ * implements an {@link AnimatedAttributeListener} list.
+ *
+ * @author <a href="mailto:cam%40mcc%2eid%2eau">Cameron McCormack</a>
+ * @version $Id$
+ */
+public abstract class AbstractSVGAnimatedValue
+    implements AnimatedLiveAttributeValue {
+
+    /**
+     * The associated element.
+     */
+    protected AbstractElement element;
+
+    /**
+     * The namespace URI of the attribute.
+     */
+    protected String namespaceURI;
+
+    /**
+     * The local name of the attribute.
+     */
+    protected String localName;
+
+    /**
+     * Whether there is a current animated value.
+     */
+    protected boolean hasAnimVal;
+
+    /**
+     * Listener list.
+     */
+    protected LinkedList listeners = new LinkedList();
+
+    /**
+     * Creates a new AbstractSVGAnimatedValue.
+     */
+    public AbstractSVGAnimatedValue(AbstractElement elt, String ns, String ln) {
+        element = elt;
+        namespaceURI = ns;
+        localName = ln;
+    }
+
+    /**
+     * Returns the namespace URI of the attribute.
+     */
+    public String getNamespaceURI() {
+        return namespaceURI;
+    }
+
+    /**
+     * Returns the local name of the attribute.
+     */
+    public String getLocalName() {
+        return localName;
+    }
+
+    /**
+     * Returns whether this animated value has a specified value.
+     * @return true if the DOM attribute is specified or if the attribute has
+     *         an animated value, false otherwise
+     */
+    public boolean isSpecified() {
+        return hasAnimVal || element.hasAttributeNS(namespaceURI, localName);
+    }
+
+    /**
+     * Updates the animated value with the given {@link AnimatableValue}.
+     */
+    protected abstract void updateAnimatedValue(AnimatableValue val);
+
+    /**
+     * Adds a listener for changes to the animated value.
+     */
+    public void addAnimatedAttributeListener(AnimatedAttributeListener aal) {
+        if (!listeners.contains(aal)) {
+            listeners.add(aal);
+        }
+    }
+
+    /**
+     * Removes a listener for changes to the animated value.
+     */
+    public void removeAnimatedAttributeListener(AnimatedAttributeListener aal) {
+        listeners.remove(aal);
+    }
+
+    /**
+     * Fires the listeners for the base value.
+     */
+    protected void fireBaseAttributeListeners() {
+        if (element instanceof SVGOMElement) {
+            ((SVGOMElement) element).fireBaseAttributeListeners(namespaceURI,
+                                                                localName);
+        }
+    }
+
+    /**
+     * Fires the listeners for the animated value.
+     */
+    protected void fireAnimatedAttributeListeners() {
+        Iterator i = listeners.iterator();
+        while (i.hasNext()) {
+            AnimatedAttributeListener listener =
+                (AnimatedAttributeListener) i.next();
+            listener.animatedAttributeChanged(element, this);
+        }
+    }
+}