Author: cbrisson
Date: Thu Apr 18 15:09:52 2019
New Revision: 1857759

URL: http://svn.apache.org/viewvc?rev=1857759&view=rev
Log:
[tools/model] Initial import: Velosurf library migration tools (wip)

Added:
    
velocity/tools/branches/model/velocity-tools-model/src/main/java/org/apache/velocity/tools/model/old/
    
velocity/tools/branches/model/velocity-tools-model/src/main/java/org/apache/velocity/tools/model/old/Velosurf.java
    
velocity/tools/branches/model/velocity-tools-model/src/main/java/org/apache/velocity/tools/model/old/VelosurfTool.java

Added: 
velocity/tools/branches/model/velocity-tools-model/src/main/java/org/apache/velocity/tools/model/old/Velosurf.java
URL: 
http://svn.apache.org/viewvc/velocity/tools/branches/model/velocity-tools-model/src/main/java/org/apache/velocity/tools/model/old/Velosurf.java?rev=1857759&view=auto
==============================================================================
--- 
velocity/tools/branches/model/velocity-tools-model/src/main/java/org/apache/velocity/tools/model/old/Velosurf.java
 (added)
+++ 
velocity/tools/branches/model/velocity-tools-model/src/main/java/org/apache/velocity/tools/model/old/Velosurf.java
 Thu Apr 18 15:09:52 2019
@@ -0,0 +1,9 @@
+package org.apache.velocity.tools.model.old;
+
+import org.apache.velocity.tools.model.Model;
+
+@Deprecated
+public class Velosurf extends Model
+{
+
+}

Added: 
velocity/tools/branches/model/velocity-tools-model/src/main/java/org/apache/velocity/tools/model/old/VelosurfTool.java
URL: 
http://svn.apache.org/viewvc/velocity/tools/branches/model/velocity-tools-model/src/main/java/org/apache/velocity/tools/model/old/VelosurfTool.java?rev=1857759&view=auto
==============================================================================
--- 
velocity/tools/branches/model/velocity-tools-model/src/main/java/org/apache/velocity/tools/model/old/VelosurfTool.java
 (added)
+++ 
velocity/tools/branches/model/velocity-tools-model/src/main/java/org/apache/velocity/tools/model/old/VelosurfTool.java
 Thu Apr 18 15:09:52 2019
@@ -0,0 +1,48 @@
+package org.apache.velocity.tools.model.old;
+
+import org.apache.velocity.tools.XmlUtils;
+import org.apache.velocity.tools.config.ConfigurationException;
+import org.apache.velocity.tools.generic.ValueParser;
+import org.apache.velocity.tools.model.Model;
+import org.apache.velocity.tools.model.ModelTool;
+import org.apache.velocity.tools.model.config.ConfigHelper;
+import org.w3c.dom.Element;
+import org.xml.sax.InputSource;
+
+import javax.xml.parsers.DocumentBuilderFactory;
+import java.io.InputStreamReader;
+import java.net.URL;
+
+@Deprecated
+public class VelosurfTool extends ModelTool
+{
+    @Override
+    protected Model createModel()
+    {
+        return new Velosurf();
+    }
+
+    @Override
+    protected void configure(ValueParser params)
+    {
+        String credentials = params.getString("credentials");
+        if (credentials != null)
+        {
+            URL url = new ConfigHelper(params).findURL(credentials);
+            try
+            {
+                DocumentBuilderFactory builderFactory = 
XmlUtils.createDocumentBuilderFactory();
+                builderFactory.setXIncludeAware(true);
+                Element doc = builderFactory.newDocumentBuilder().parse(new 
InputSource(new InputStreamReader(url.openStream()))).getDocumentElement();
+                params.put("databaseURL", doc.getAttribute("url"));
+                params.put("credentials.user", doc.getAttribute("user"));
+                params.put("credentials.password", 
doc.getAttribute("password"));
+            }
+            catch (Exception e)
+            {
+                throw new ConfigurationException("could not read credentials 
from URL " + url, e);
+            }
+        }
+        super.configure(params);
+    }
+}


Reply via email to