Skip to content

Commit

Permalink
Added javadoc to Refactory class
Browse files Browse the repository at this point in the history
  • Loading branch information
gastaldi committed Jul 8, 2013
1 parent 560f260 commit 26a32ea
Showing 1 changed file with 39 additions and 1 deletion.
Original file line number Diff line number Diff line change
Expand Up @@ -15,12 +15,20 @@
import org.jboss.forge.parser.java.Method;

/**
* Utility refactory methods for {@link JavaClass} objects
*
* @author <a href="mailto:lincolnbaxter@gmail.com">Lincoln Baxter, III</a>
*
* @author <a href="mailto:ggastald@redhat.com">George Gastaldi</a>
* @author <a href="mailto:vreynolds@redhat.com">Vineet Reynolds</a>
*/
public class Refactory
{
/**
* Generates a getXXX and setXXX method for the supplied field
*
* @param clazz
* @param field
*/
public static void createGetterAndSetter(final JavaClass clazz, final Field<JavaClass> field)
{
if (!clazz.hasField(field))
Expand All @@ -44,6 +52,13 @@ public static void createGetterAndSetter(final JavaClass clazz, final Field<Java
}
}

/**
* Create a <i>hashCode</i> and <i>equals</i> implementation for the given class and fields
*
* @deprecated Use {@link Refactory#createHashCodeAndEquals(JavaClass, Field...)} instead, since this method relies
* on the existence of the id field
*/
@Deprecated
public static void createHashCodeAndEquals(final JavaClass clazz)
{
final Field<?>[] fields;
Expand All @@ -61,6 +76,12 @@ public static void createHashCodeAndEquals(final JavaClass clazz)
createHashCodeAndEquals(clazz, fields);
}

/**
* Create a <i>hashCode</i> and <i>equals</i> implementation for the given class and fields
*
* @param clazz class to be changed
* @param fields fields to be used in the equals/hashCode methods
*/
public static void createHashCodeAndEquals(final JavaClass clazz, final Field<?>... fields)
{
if (fields == null || fields.length < 1)
Expand Down Expand Up @@ -114,17 +135,34 @@ public static void createHashCodeAndEquals(final JavaClass clazz, final Field<?>
.addAnnotation(Override.class);
}

/**
* Create a <i>toString</i> implementation using all the fields in this class
*
* @param clazz
*/
public static void createToStringFromFields(final JavaClass clazz)
{
List<Field<JavaClass>> fields = clazz.getFields();
createToStringFromFields(clazz, fields);
}

/**
* Create a <i>toString</i> implementation using the supplied fields
*
* @param clazz
* @param fields
*/
public static void createToStringFromFields(final JavaClass clazz, final Field<JavaClass>... fields)
{
createToStringFromFields(clazz, Arrays.asList(fields));
}

/**
* Create a <i>toString</i> implementation using the supplied fields
*
* @param clazz
* @param fields
*/
public static void createToStringFromFields(final JavaClass clazz, final List<Field<JavaClass>> fields)
{
Method<JavaClass> method = clazz.addMethod().setName("toString").setReturnType(String.class)
Expand Down

0 comments on commit 26a32ea

Please sign in to comment.