You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Lars W (JIRA)" <ji...@apache.org> on 2018/03/23 13:27:00 UTC
[jira] [Updated] (CONFIGURATION-693) Conversion to File is missing
[ https://issues.apache.org/jira/browse/CONFIGURATION-693?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Lars W updated CONFIGURATION-693:
---------------------------------
Attachment: Converter.patch.txt
> Conversion to File is missing
> -----------------------------
>
> Key: CONFIGURATION-693
> URL: https://issues.apache.org/jira/browse/CONFIGURATION-693
> Project: Commons Configuration
> Issue Type: Improvement
> Components: Type conversion
> Affects Versions: 2.2
> Reporter: Lars W
> Priority: Major
> Attachments: Converter.patch.txt
>
>
> PropertyConverter.java misses type conversion to File although a string could be easily converted to a File.
> Attaching the patch as a file does not work - I don't know why. So I'll paste it here:
>
> Index: src/main/java/org/apache/commons/configuration/PropertyConverter.java
> ===================================================================
> --- src/main/java/org/apache/commons/configuration/PropertyConverter.java
> +++ src/main/java/org/apache/commons/configuration/PropertyConverter.java
> @@ -19,6 +19,7 @@
> package org.apache.commons.configuration2.convert;
>
> import java.awt.Color;
> +import java.io.File;
> import java.lang.reflect.Constructor;
> import java.lang.reflect.InvocationTargetException;
> import java.math.BigDecimal;
> @@ -29,6 +30,7 @@
> import java.net.URISyntaxException;
> import java.net.URL;
> import java.net.UnknownHostException;
> +import java.nio.file.Path;
> import java.text.ParseException;
> import java.text.SimpleDateFormat;
> import java.util.Calendar;
> @@ -153,6 +155,10 @@
> {
> return toCalendar(value, convHandler.getDateFormat());
> }
> + else if (File.class.equals(cls))
> + {
> + return toFile(value);
> + }
> else if (URI.class.equals(cls))
> {
> return toURI(value);
> @@ -477,6 +483,33 @@
> }
>
> /**
> + * Convert the specified object into a File.
> + *
> + * @param value the value to convert
> + * @return the converted value
> + * @throws ConversionException thrown if the value cannot be converted to a File
> + */
> + public static File toFile(Object value) throws ConversionException
> + {
> + if (value instanceof File)
> + {
> + return (File) value;
> + }
> + else if (value instanceof Path)
> + {
> + return ((Path) value).toFile();
> + }
> + else if (value instanceof String)
> + {
> + return new File((String) value);
> + }
> + else
> + {
> + throw new ConversionException("The value " + value + " can't be converted to a File");
> + }
> + }
> +
> + /**
> * Convert the specified object into an URI.
> *
> * @param value the value to convert
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)