From c46a0327950c2ab22e38e5bb9f8d6fcb36dbcbe8 Mon Sep 17 00:00:00 2001 From: jendave Date: Tue, 25 Oct 2011 15:44:22 +0000 Subject: [PATCH] checkstyle --- .../java/tree/properties/PropertyElement.java | 14 +- .../java/tree/properties/PropertyType.java | 29 ++- .../java/tree/properties/TreeProperties.java | 240 ++++++++++-------- .../java/tree/properties/types/FileType.java | 35 +-- 4 files changed, 181 insertions(+), 137 deletions(-) diff --git a/src/main/java/tree/properties/PropertyElement.java b/src/main/java/tree/properties/PropertyElement.java index 60cb27f4d3c..5fe456ca4de 100644 --- a/src/main/java/tree/properties/PropertyElement.java +++ b/src/main/java/tree/properties/PropertyElement.java @@ -6,39 +6,39 @@ package tree.properties; - /** * The class PropertyElement. - * + * * @author Clemens Koza * @version V0.0 19.08.2009 */ public interface PropertyElement { /** * Returns the key of the property in the TreeProperties. - * + * * @return a {@link java.lang.String} object. */ String getKey(); /** * Returns the type of the element. - * + * * @return a {@link java.lang.Class} object. */ Class getType(); /** * Returns the value of the element. - * + * * @return a {@link java.lang.Object} object. */ Object getValue(); /** * Sets the property value as a string. - * - * @param value a {@link java.lang.String} object. + * + * @param value + * a {@link java.lang.String} object. */ void setValue(String value); } diff --git a/src/main/java/tree/properties/PropertyType.java b/src/main/java/tree/properties/PropertyType.java index ac2a5f3bff2..4fe975ccf70 100644 --- a/src/main/java/tree/properties/PropertyType.java +++ b/src/main/java/tree/properties/PropertyType.java @@ -1,43 +1,44 @@ package tree.properties; - /** * PropertyTypeHandler.java * * Created on 19.08.2009 */ - /** - * The class PropertyType. A property type is used to process special, suffixed entries in a {@link TreeProperties} - * ' properties-file - * + * The class PropertyType. A property type is used to process special, suffixed + * entries in a {@link TreeProperties} ' properties-file + * * @author Clemens Koza * @version V0.0 19.08.2009 - * - * @param - * + * + * @param + * */ public interface PropertyType { /** * The suffix, not including "--", that identifies this content type. - * + * * @return a {@link java.lang.String} object. */ String getSuffix(); /** * The class that identifies this content type. - * + * * @return a {@link java.lang.Class} object. */ Class getType(); /** - * Returns an object for the specified value, in the context of a TreeProperties. - * - * @param p a {@link treeProperties.TreeProperties} object. - * @param s a {@link java.lang.String} object. + * Returns an object for the specified value, in the context of a + * TreeProperties. + * + * @param p + * a {@link treeProperties.TreeProperties} object. + * @param s + * a {@link java.lang.String} object. * @return a T object. */ T toObject(TreeProperties p, String s); diff --git a/src/main/java/tree/properties/TreeProperties.java b/src/main/java/tree/properties/TreeProperties.java index 66979ca4bd2..2bf5c0ea460 100644 --- a/src/main/java/tree/properties/TreeProperties.java +++ b/src/main/java/tree/properties/TreeProperties.java @@ -1,13 +1,11 @@ package tree.properties; - /** * TreeProperties.java * * Created on 19.08.2009 */ - import static java.lang.String.format; import static java.util.Collections.unmodifiableList; @@ -28,24 +26,27 @@ import java.util.Set; import tree.properties.types.FileType; - /** - * The class TreeProperties. This class allows for a tree-like structure of properties-files. This class lays some - * restrictions on the keys used in properties-files: + * The class TreeProperties. This class allows for a tree-like structure of + * properties-files. This class lays some restrictions on the keys used in + * properties-files: *
    *
  • The use of "--" is forbidden
  • - *
  • The suffixes "--properties" and "--transparent-properties" are reserved for specifying additional - * properties-files in the tree (relative paths are relative to the properties-file where they are referenced)
  • - *
  • Other suffixes are used by {@link PropertyType}s. PropertyTypes are registered or unregistered using - * {@link #addType(PropertyType)} or {@link #removeType(PropertyType)}.
  • + *
  • The suffixes "--properties" and "--transparent-properties" are reserved + * for specifying additional properties-files in the tree (relative paths are + * relative to the properties-file where they are referenced)
  • + *
  • Other suffixes are used by {@link PropertyType}s. PropertyTypes are + * registered or unregistered using {@link #addType(PropertyType)} or + * {@link #removeType(PropertyType)}.
  • *
* Take a look at these files: *

+ * *

  * #root.properties
  * title=directions
  * icons--properties=img/icons.properties
- *
+ * 
  * #img/icons.properties
  * left--file=left.jpg
  * right--file=right.jpg
@@ -53,7 +54,7 @@ import tree.properties.types.FileType;
  * down--file=down.jpg
  * #note that the path does not contain "img/"
  * size--transparent-properties=size.properties
- *
+ * 
  * #img/size.properties
  * width=20
  * height=20
@@ -61,6 +62,7 @@ import tree.properties.types.FileType;
  * 

* These properties are retrieved with *

+ * *

  * getProperty("title") //directions
  * getFile("icons/left") //img/left.jpg
@@ -71,15 +73,17 @@ import tree.properties.types.FileType;
  * getProperty("icons/height") //20
  * 
*

- * As you can see, a properties file included with "--transparent-properties" hides its existence from the user. A - * file included with "--properties" is not hidden. The child properties are accessible as if their keys were - * prepended with the parent key, separated by a slash. + * As you can see, a properties file included with "--transparent-properties" + * hides its existence from the user. A file included with "--properties" is not + * hidden. The child properties are accessible as if their keys were prepended + * with the parent key, separated by a slash. *

- * Note that --file, --properties and --transparent-properties entries will be relative to the included file, even - * if the properties file is transparent. + * Note that --file, --properties and --transparent-properties entries will be + * relative to the included file, even if the properties file is transparent. *

* Also, the TreeProperties can be retrieved: *

+ * *

  * getChildProperties("icons")
  * getTransparentProperties("icons/size")
@@ -87,7 +91,7 @@ import tree.properties.types.FileType;
  * 

*

* TODO add edit & save support - * + * * @author Clemens Koza * @version V0.0 19.08.2009 * @see Properties @@ -119,9 +123,12 @@ public class TreeProperties implements Iterable { private List exceptions; /** - *

addType.

- * - * @param type a {@link treeProperties.PropertyType} object. + *

+ * addType. + *

+ * + * @param type + * a {@link treeProperties.PropertyType} object. */ public static void addType(final PropertyType type) { TYPES.put(type.getType(), type); @@ -129,9 +136,12 @@ public class TreeProperties implements Iterable { } /** - *

removeType.

- * - * @param type a {@link treeProperties.PropertyType} object. + *

+ * removeType. + *

+ * + * @param type + * a {@link treeProperties.PropertyType} object. */ public static void removeType(final PropertyType type) { TYPES.remove(type.getType()); @@ -139,34 +149,44 @@ public class TreeProperties implements Iterable { } /** - * Delegate to {@link #TreeProperties(File)} with a new {@link File#File(String)}. - * - * @param f a {@link java.lang.String} object. - * @throws java.io.IOException if any. + * Delegate to {@link #TreeProperties(File)} with a new + * {@link File#File(String)}. + * + * @param f + * a {@link java.lang.String} object. + * @throws java.io.IOException + * if any. */ public TreeProperties(final String f) throws IOException { this(new File(f)); } /** - * Delegate to {@link #TreeProperties(File)} with a new {@link File#File(File, String)}. - * - * @param parent a {@link java.io.File} object. - * @param f a {@link java.lang.String} object. - * @throws java.io.IOException if any. + * Delegate to {@link #TreeProperties(File)} with a new + * {@link File#File(File, String)}. + * + * @param parent + * a {@link java.io.File} object. + * @param f + * a {@link java.lang.String} object. + * @throws java.io.IOException + * if any. */ public TreeProperties(final File parent, final String f) throws IOException { this(new File(parent, f)); } /** - * The constructor is forgiving in the way that Exceptions are not directly forwarded. The only fatal exception - * is if the parameter is null or not found. Instead, the rest of the properties are processed, so that the - * erroneous properties are the only ones not present in this TreeProperties. Afterwards, the exceptions can be - * accessed. - * - * @param f a {@link java.io.File} object. - * @throws java.io.IOException if any. + * The constructor is forgiving in the way that Exceptions are not directly + * forwarded. The only fatal exception is if the parameter is null or not + * found. Instead, the rest of the properties are processed, so that the + * erroneous properties are the only ones not present in this + * TreeProperties. Afterwards, the exceptions can be accessed. + * + * @param f + * a {@link java.io.File} object. + * @throws java.io.IOException + * if any. */ public TreeProperties(final File f) throws IOException { if (f == null) { @@ -177,9 +197,9 @@ public class TreeProperties implements Iterable { instanceSuffixes = new HashMap>(SUFFIXES); Properties p = new Properties(); -// BufferedReader r = new BufferedReader(new FileReader(f)); -// p.load(r); -// r.close(); + // BufferedReader r = new BufferedReader(new FileReader(f)); + // p.load(r); + // r.close(); BufferedInputStream is = new BufferedInputStream(new FileInputStream(f)); p.load(is); is.close(); @@ -195,10 +215,10 @@ public class TreeProperties implements Iterable { String[] parts = key.split("--", 2); Object result; if (parts.length == 1) { - //Regular + // Regular result = value; } else { - //suffix + // suffix if (parts[1].equals(TRANSPARENT) || parts[1].equals(CHILD)) { TreeProperties child = new TreeProperties(path, FileType.getPath(value)); exceptions.addAll(child.exceptions); @@ -213,15 +233,16 @@ public class TreeProperties implements Iterable { } properties.put(key, result); } catch (Exception ex) { - exceptions.add(new Exception(format("File '%s', Property '%s':%n %s", f, key, ex.getMessage()), - ex.getCause())); + exceptions.add(new Exception(format("File '%s', Property '%s':%n %s", f, key, ex.getMessage()), ex + .getCause())); } } } /** - * Returns the exceptions that were thrown while creating the tree properties. - * + * Returns the exceptions that were thrown while creating the tree + * properties. + * * @return a {@link java.util.List} object. */ public final List getExceptions() { @@ -229,10 +250,11 @@ public class TreeProperties implements Iterable { } /** - * If exceptions occurred during construction, this method throws an IOException that combines the messages of - * those exceptions. - * - * @throws java.io.IOException if any. + * If exceptions occurred during construction, this method throws an + * IOException that combines the messages of those exceptions. + * + * @throws java.io.IOException + * if any. */ public final void rethrow() throws IOException { if (exceptions.isEmpty()) { @@ -248,7 +270,7 @@ public class TreeProperties implements Iterable { /** * Returns the parent directory of this TreeProperties. - * + * * @return a {@link java.io.File} object. */ public final File getPath() { @@ -256,10 +278,12 @@ public class TreeProperties implements Iterable { } /** - * Checks if the key is valid for a query and throws an {@link IllegalArgumentException} if not. Slashes are - * allowed in this method, but suffixes are not - * - * @param key a {@link java.lang.String} object. + * Checks if the key is valid for a query and throws an + * {@link IllegalArgumentException} if not. Slashes are allowed in this + * method, but suffixes are not + * + * @param key + * a {@link java.lang.String} object. */ private void checkQueryKey(final String key) { if (key.contains("--")) { @@ -269,8 +293,9 @@ public class TreeProperties implements Iterable { /** * Retrieves the string property for the given key. - * - * @param key a {@link java.lang.String} object. + * + * @param key + * a {@link java.lang.String} object. * @return a {@link java.lang.String} object. */ public final String getProperty(final String key) { @@ -279,8 +304,9 @@ public class TreeProperties implements Iterable { /** * Convenience for {@code getProperty(key, File.class)}. - * - * @param key a {@link java.lang.String} object. + * + * @param key + * a {@link java.lang.String} object. * @return a {@link java.io.File} object. */ public final File getFile(final String key) { @@ -288,9 +314,11 @@ public class TreeProperties implements Iterable { } /** - * Retrieves the child properties for the given key. Transparent properties can't be retrieved this way. - * - * @param key a {@link java.lang.String} object. + * Retrieves the child properties for the given key. Transparent properties + * can't be retrieved this way. + * + * @param key + * a {@link java.lang.String} object. * @return a {@link treeProperties.TreeProperties} object. */ public final TreeProperties getChildProperties(final String key) { @@ -299,8 +327,9 @@ public class TreeProperties implements Iterable { /** * Retrieves the child properties for the given key. - * - * @param key a {@link java.lang.String} object. + * + * @param key + * a {@link java.lang.String} object. * @return a {@link treeProperties.TreeProperties} object. */ public final TreeProperties getTransparentProperties(final String key) { @@ -308,12 +337,16 @@ public class TreeProperties implements Iterable { } /** - * Returns a property of the given type. This does not work to retrieve tree properties. - * - * @param key a {@link java.lang.String} object. - * @param cls a {@link java.lang.Class} object. + * Returns a property of the given type. This does not work to retrieve tree + * properties. + * + * @param key + * a {@link java.lang.String} object. + * @param cls + * a {@link java.lang.Class} object. * @return a T object. - * @param a T object. + * @param + * a T object. */ @SuppressWarnings("unchecked") public final T getProperty(final String key, final Class cls) { @@ -328,25 +361,30 @@ public class TreeProperties implements Iterable { } /** - *

getProperty.

- * - * @param key a {@link java.lang.String} object. - * @param suffix a {@link java.lang.String} object. - * @param top a boolean. + *

+ * getProperty. + *

+ * + * @param key + * a {@link java.lang.String} object. + * @param suffix + * a {@link java.lang.String} object. + * @param top + * a boolean. * @return a {@link java.lang.Object} object. */ private Object getProperty(final String key, final String suffix, final boolean top) { checkQueryKey(key); - //first, try the key in the current file, as if there were no slash - //No subpath - either directly in the properties... + // first, try the key in the current file, as if there were no slash + // No subpath - either directly in the properties... Object result = properties.get(key + suffix); if (result != null) { return result; } - //...or in a transparent properties + // ...or in a transparent properties - //look for all --transparent-properties + // look for all --transparent-properties for (Entry entry : properties.entrySet()) { if (entry.getKey().endsWith("--" + TRANSPARENT)) { TreeProperties p = (TreeProperties) entry.getValue(); @@ -357,10 +395,10 @@ public class TreeProperties implements Iterable { } } - //if there is no immediate containment, try the children - //try every combination - //for a/b/c, there could be a child "a/b--properties" that contains "c" - //or "a--properties" with "b/c" + // if there is no immediate containment, try the children + // try every combination + // for a/b/c, there could be a child "a/b--properties" that contains "c" + // or "a--properties" with "b/c" int index = -1; while ((index = key.indexOf('/', index + 1)) != -1) { String first = key.substring(0, index), second = key.substring(index + 1); @@ -376,16 +414,16 @@ public class TreeProperties implements Iterable { } if (top) { Exception ex = new Exception("TreeProperties returns null for " + key + suffix); -// ex.printStackTrace(); + // ex.printStackTrace(); System.err.println(ex); } return null; } /** - * Returns an iterator over all the regular entries of this object. That means that transparent or child tree - * properties are not included. - * + * Returns an iterator over all the regular entries of this object. That + * means that transparent or child tree properties are not included. + * * @return a {@link java.util.Iterator} object. */ public final Iterator iterator() { @@ -393,10 +431,14 @@ public class TreeProperties implements Iterable { }; /** - *

iterator.

- * - * @param prefix a {@link java.lang.String} object. - * @return a {@link treeProperties.TreeProperties.TreePropertiesIterator} object. + *

+ * iterator. + *

+ * + * @param prefix + * a {@link java.lang.String} object. + * @return a {@link treeProperties.TreeProperties.TreePropertiesIterator} + * object. */ private TreePropertiesIterator iterator(final String prefix) { return new TreePropertiesIterator(prefix); @@ -413,7 +455,8 @@ public class TreeProperties implements Iterable { this.prefix = prefix; } - //After this call, the next element is determined, or the child iterator has next + // After this call, the next element is determined, or the child + // iterator has next public boolean hasNext() { if (next != null) { @@ -430,14 +473,14 @@ public class TreeProperties implements Iterable { cls = String.class; } else if (parts[1].equals(TRANSPARENT)) { child = ((TreeProperties) entry.getValue()).iterator(prefix); - //recursive, for the case that the child iterator is empty + // recursive, for the case that the child iterator is empty return hasNext(); } else if (parts[1].equals(TreeProperties.CHILD)) { child = ((TreeProperties) entry.getValue()).iterator(prefix + parts[0] + "/"); - //recursive, for the case that the child iterator is empty + // recursive, for the case that the child iterator is empty return hasNext(); } else { - //class is determined by the content type + // class is determined by the content type PropertyType t = instanceSuffixes.get(parts[1]); cls = t.getType(); } @@ -447,17 +490,14 @@ public class TreeProperties implements Iterable { return prefix + parts[0]; } - public Class getType() { return cls; } - public Object getValue() { return value; } - public void setValue(final String value) { } }; @@ -467,7 +507,6 @@ public class TreeProperties implements Iterable { } } - public PropertyElement next() { if (!hasNext()) { throw new NoSuchElementException(); @@ -480,7 +519,6 @@ public class TreeProperties implements Iterable { } } - public void remove() { throw new UnsupportedOperationException(); } diff --git a/src/main/java/tree/properties/types/FileType.java b/src/main/java/tree/properties/types/FileType.java index 43be5105ae8..74bed48426f 100644 --- a/src/main/java/tree/properties/types/FileType.java +++ b/src/main/java/tree/properties/types/FileType.java @@ -6,18 +6,16 @@ package tree.properties.types; - -import tree.properties.PropertyType; -import tree.properties.TreeProperties; - import java.io.File; import java.util.regex.Matcher; import java.util.regex.Pattern; +import tree.properties.PropertyType; +import tree.properties.TreeProperties; /** * The class FileType. - * + * * @author Clemens Koza * @version V0.0 19.08.2009 */ @@ -28,8 +26,10 @@ public class FileType implements PropertyType { public static final Class TYPE = File.class; /** - *

Getter for the field suffix.

- * + *

+ * Getter for the field suffix. + *

+ * * @return a {@link java.lang.String} object. */ public final String getSuffix() { @@ -37,15 +37,16 @@ public class FileType implements PropertyType { } /** - *

Getter for the field type.

- * + *

+ * Getter for the field type. + *

+ * * @return a {@link java.lang.Class} object. */ public final Class getType() { return TYPE; } - /** {@inheritDoc} */ public final File toObject(final TreeProperties p, final String s) { String path = getPath(s); @@ -58,14 +59,18 @@ public class FileType implements PropertyType { } /** - * Returns a path path from a property value. Three substitutions are applied: + * Returns a path path from a property value. Three substitutions are + * applied: *
    - *
  • A "~/" or "~\" at the beginning is replaced with the user's home directory
  • + *
  • A "~/" or "~\" at the beginning is replaced with the user's home + * directory
  • *
  • A "$$" anywhere is replaced with a single "$"
  • - *
  • A "${*}", where * is any string without "}", is replaced by {@link System#getProperty(String)}
  • + *
  • A "${*}", where * is any string without "}", is replaced by + * {@link System#getProperty(String)}
  • *
- * - * @param s a {@link java.lang.String} object. + * + * @param s + * a {@link java.lang.String} object. * @return a {@link java.lang.String} object. */ public static String getPath(String s) {