svn commit: r903804 - in /ofbiz/trunk/framework/base/src: META-INF/services/org.ofbiz.base.conversion.ConverterLoader org/ofbiz/base/conversion/MiscConverters.java org/ofbiz/base/conversion/NetConverters.java

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

svn commit: r903804 - in /ofbiz/trunk/framework/base/src: META-INF/services/org.ofbiz.base.conversion.ConverterLoader org/ofbiz/base/conversion/MiscConverters.java org/ofbiz/base/conversion/NetConverters.java

doogie-3
Author: doogie
Date: Wed Jan 27 19:54:00 2010
New Revision: 903804

URL: http://svn.apache.org/viewvc?rev=903804&view=rev
Log:
Add a bunch more convertors.

Added:
    ofbiz/trunk/framework/base/src/org/ofbiz/base/conversion/NetConverters.java
Modified:
    ofbiz/trunk/framework/base/src/META-INF/services/org.ofbiz.base.conversion.ConverterLoader
    ofbiz/trunk/framework/base/src/org/ofbiz/base/conversion/MiscConverters.java

Modified: ofbiz/trunk/framework/base/src/META-INF/services/org.ofbiz.base.conversion.ConverterLoader
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/base/src/META-INF/services/org.ofbiz.base.conversion.ConverterLoader?rev=903804&r1=903803&r2=903804&view=diff
==============================================================================
--- ofbiz/trunk/framework/base/src/META-INF/services/org.ofbiz.base.conversion.ConverterLoader (original)
+++ ofbiz/trunk/framework/base/src/META-INF/services/org.ofbiz.base.conversion.ConverterLoader Wed Jan 27 19:54:00 2010
@@ -19,5 +19,6 @@
 org.ofbiz.base.conversion.CollectionConverters
 org.ofbiz.base.conversion.DateTimeConverters
 org.ofbiz.base.conversion.MiscConverters
+org.ofbiz.base.conversion.NetConverters
 org.ofbiz.base.conversion.NumberConverters
 

Modified: ofbiz/trunk/framework/base/src/org/ofbiz/base/conversion/MiscConverters.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/base/src/org/ofbiz/base/conversion/MiscConverters.java?rev=903804&r1=903803&r2=903804&view=diff
==============================================================================
--- ofbiz/trunk/framework/base/src/org/ofbiz/base/conversion/MiscConverters.java (original)
+++ ofbiz/trunk/framework/base/src/org/ofbiz/base/conversion/MiscConverters.java Wed Jan 27 19:54:00 2010
@@ -23,7 +23,11 @@
 import java.nio.ByteBuffer;
 import java.sql.Blob;
 import java.sql.Clob;
+import java.text.DecimalFormat;
+import java.text.SimpleDateFormat;
 import java.util.Locale;
+import java.util.UUID;
+import java.util.regex.Pattern;
 
 import org.ofbiz.base.util.UtilMisc;
 
@@ -168,6 +172,86 @@
         }
     }
 
+    public static class DecimalFormatToString extends AbstractConverter<DecimalFormat, String> {
+        public DecimalFormatToString() {
+            super(DecimalFormat.class, String.class);
+        }
+
+        public String convert(DecimalFormat obj) throws ConversionException {
+            return obj.toPattern();
+        }
+    }
+
+    public static class StringToDecimalFormat extends AbstractConverter<String, DecimalFormat> {
+        public StringToDecimalFormat() {
+            super(String.class, DecimalFormat.class);
+        }
+
+        public DecimalFormat convert(String obj) throws ConversionException {
+            return new DecimalFormat(obj);
+        }
+    }
+
+    public static class SimpleDateFormatToString extends AbstractConverter<SimpleDateFormat, String> {
+        public SimpleDateFormatToString() {
+            super(SimpleDateFormat.class, String.class);
+        }
+
+        public String convert(SimpleDateFormat obj) throws ConversionException {
+            return obj.toPattern();
+        }
+    }
+
+    public static class StringToSimpleDateFormat extends AbstractConverter<String, SimpleDateFormat> {
+        public StringToSimpleDateFormat() {
+            super(String.class, SimpleDateFormat.class);
+        }
+
+        public SimpleDateFormat convert(String obj) throws ConversionException {
+            return new SimpleDateFormat(obj);
+        }
+    }
+
+    public static class UUIDToString extends AbstractConverter<UUID, String> {
+        public UUIDToString() {
+            super(UUID.class, String.class);
+        }
+
+        public String convert(UUID obj) throws ConversionException {
+            return obj.toString();
+        }
+    }
+
+    public static class StringToUUID extends AbstractConverter<String, UUID> {
+        public StringToUUID() {
+            super(String.class, UUID.class);
+        }
+
+        public UUID convert(String obj) throws ConversionException {
+            return UUID.fromString(obj);
+        }
+    }
+
+    public static class RegexPatternToString extends AbstractConverter<Pattern, String> {
+        public RegexPatternToString() {
+            super(Pattern.class, String.class);
+        }
+
+        public String convert(Pattern obj) throws ConversionException {
+            return obj.toString();
+        }
+    }
+
+    public static class StringToRegexPattern extends AbstractConverter<String, Pattern> {
+        public StringToRegexPattern() {
+            super(String.class, Pattern.class);
+        }
+
+        public Pattern convert(String obj) throws ConversionException {
+            return Pattern.compile(obj);
+        }
+    }
+
     public void loadConverters() {
         Converters.loadContainedConverters(MiscConverters.class);
     }

Added: ofbiz/trunk/framework/base/src/org/ofbiz/base/conversion/NetConverters.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/base/src/org/ofbiz/base/conversion/NetConverters.java?rev=903804&view=auto
==============================================================================
--- ofbiz/trunk/framework/base/src/org/ofbiz/base/conversion/NetConverters.java (added)
+++ ofbiz/trunk/framework/base/src/org/ofbiz/base/conversion/NetConverters.java Wed Jan 27 19:54:00 2010
@@ -0,0 +1,148 @@
+/*******************************************************************************
+ * 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.ofbiz.base.conversion;
+
+import java.io.IOException;
+import java.net.InetAddress;
+import java.net.MalformedURLException;
+import java.net.URI;
+import java.net.URISyntaxException;
+import java.net.URL;
+import java.text.NumberFormat;
+import java.text.ParseException;
+import java.util.List;
+import java.util.Locale;
+import java.util.Set;
+import java.util.TimeZone;
+
+import org.ofbiz.base.util.StringUtil;
+
+import javolution.util.FastList;
+import javolution.util.FastSet;
+
+/** Net Converter classes. */
+public class NetConverters implements ConverterLoader {
+    public static final String module = NetConverters.class.getName();
+
+    public static class StringToInetAddress extends AbstractConverter<String, InetAddress> {
+        public StringToInetAddress() {
+            super(String.class, InetAddress.class);
+        }
+
+        public InetAddress convert(String obj) throws ConversionException {
+            try {
+                return InetAddress.getByName(obj);
+            } catch (IOException e) {
+                throw (ConversionException) new ConversionException(e.getMessage()).initCause(e);
+            }
+        }
+    }
+
+    public static class InetAddressToString extends AbstractConverter<InetAddress, String> {
+        public InetAddressToString() {
+            super(InetAddress.class, String.class);
+        }
+
+        public String convert(InetAddress obj) throws ConversionException {
+            String hostName = obj.getHostName();
+            if (hostName != null) return hostName;
+            return obj.getHostAddress();
+        }
+    }
+
+    public static class StringToURI extends AbstractConverter<String, URI> {
+        public StringToURI() {
+            super(String.class, URI.class);
+        }
+
+        public URI convert(String obj) throws ConversionException {
+            try {
+                return new URI(obj);
+            } catch (URISyntaxException e) {
+                throw (ConversionException) new ConversionException(e.getMessage()).initCause(e);
+            }
+        }
+    }
+
+    public static class URIToString extends AbstractConverter<URI, String> {
+        public URIToString() {
+            super(URI.class, String.class);
+        }
+
+        public String convert(URI obj) throws ConversionException {
+            return obj.toString();
+        }
+    }
+
+    public static class StringToURL extends AbstractConverter<String, URL> {
+        public StringToURL() {
+            super(String.class, URL.class);
+        }
+
+        public URL convert(String obj) throws ConversionException {
+            try {
+                return new URL(obj);
+            } catch (MalformedURLException e) {
+                throw (ConversionException) new ConversionException(e.getMessage()).initCause(e);
+            }
+        }
+    }
+
+    public static class URLToString extends AbstractConverter<URL, String> {
+        public URLToString() {
+            super(URL.class, String.class);
+        }
+
+        public String convert(URL obj) throws ConversionException {
+            return obj.toString();
+        }
+    }
+
+    public static class URIToURL extends AbstractConverter<URI, URL> {
+        public URIToURL() {
+            super(URI.class, URL.class);
+        }
+
+        public URL convert(URI obj) throws ConversionException {
+            try {
+                return obj.toURL();
+            } catch (MalformedURLException e) {
+                throw (ConversionException) new ConversionException(e.getMessage()).initCause(e);
+            }
+        }
+    }
+
+    public static class URLToURI extends AbstractConverter<URL, URI> {
+        public URLToURI() {
+            super(URL.class, URI.class);
+        }
+
+        public URI convert(URL obj) throws ConversionException {
+            try {
+                return obj.toURI();
+            } catch (URISyntaxException e) {
+                throw (ConversionException) new ConversionException(e.getMessage()).initCause(e);
+            }
+        }
+    }
+
+    public void loadConverters() {
+        Converters.loadContainedConverters(NetConverters.class);
+    }
+}