This is an automated email from the ASF dual-hosted git repository. lukaszlenart pushed a commit to branch WW-5233-tiles in repository https://gitbox.apache.org/repos/asf/struts.git
The following commit(s) were added to refs/heads/WW-5233-tiles by this push: new e9cad7ab3 WW-5233 Addresses a few code smells e9cad7ab3 is described below commit e9cad7ab3cbb3fe5e447015b2101b67b85f00b76 Author: Lukasz Lenart <lukaszlen...@apache.org> AuthorDate: Mon Oct 3 08:09:34 2022 +0200 WW-5233 Addresses a few code smells --- .../src/main/java/org/apache/tiles/api/Attribute.java | 18 ++++++------------ .../org/apache/tiles/api/BasicAttributeContext.java | 4 ++-- .../main/java/org/apache/tiles/api/ListAttribute.java | 9 ++++----- .../test/java/org/apache/tiles/api/AttributeTest.java | 2 +- .../java/org/apache/tiles/api/ListAttributeTest.java | 2 +- .../request/collection/HeaderValuesCollectionTest.java | 4 ++-- .../collection/HeaderValuesMapEntrySetTest.java | 4 ++-- .../apache/tiles/request/collection/KeySetTest.java | 2 +- .../ReadOnlyEnumerationMapValuesCollectionTest.java | 6 ++++-- 9 files changed, 23 insertions(+), 28 deletions(-) diff --git a/plugins/tiles/src/main/java/org/apache/tiles/api/Attribute.java b/plugins/tiles/src/main/java/org/apache/tiles/api/Attribute.java index 69209e5d4..65be6537a 100644 --- a/plugins/tiles/src/main/java/org/apache/tiles/api/Attribute.java +++ b/plugins/tiles/src/main/java/org/apache/tiles/api/Attribute.java @@ -22,7 +22,6 @@ package org.apache.tiles.api; import com.opensymphony.xwork2.util.TextParseUtil; import org.apache.tiles.request.Request; -import java.io.Serializable; import java.util.Iterator; import java.util.Objects; import java.util.Set; @@ -30,7 +29,7 @@ import java.util.Set; /** * Common implementation of attribute definition. */ -public class Attribute implements Serializable, Cloneable { +public class Attribute { /** * The name of the template renderer. @@ -42,20 +41,19 @@ public class Attribute implements Serializable, Cloneable { * * @since 2.0.6 */ - protected Set<String> roles = null; + private Set<String> roles = null; /** * The value of the attribute. */ - protected Object value = null; + private Object value = null; /** - * The expression to evaluate. Ignored if {@link #value} is not - * <code>null</code>. + * The expression to evaluate. Ignored if {@link #value} is not <code>null</code>. * * @since 2.2.0 */ - protected Expression expressionObject = null; + private Expression expressionObject = null; /** * The renderer name of the attribute. Default names are <code>string</code>, @@ -362,11 +360,7 @@ public class Attribute implements Serializable, Cloneable { + Objects.hashCode(roles) + Objects.hashCode(expressionObject); } - /** - * {@inheritDoc} - */ - @Override - public Attribute clone() { + public Attribute copy() { return new Attribute(this); } } diff --git a/plugins/tiles/src/main/java/org/apache/tiles/api/BasicAttributeContext.java b/plugins/tiles/src/main/java/org/apache/tiles/api/BasicAttributeContext.java index 9de064d6b..cd12ea860 100644 --- a/plugins/tiles/src/main/java/org/apache/tiles/api/BasicAttributeContext.java +++ b/plugins/tiles/src/main/java/org/apache/tiles/api/BasicAttributeContext.java @@ -232,7 +232,7 @@ public class BasicAttributeContext implements AttributeContext, Serializable { /** * Add all attributes to this context. - * Copies all of the mappings from the specified attribute map to this context. + * Copies all the mappings from the specified attribute map to this context. * New attribute mappings will replace any mappings that this context had for any of the keys * currently in the specified attribute map. * @@ -454,7 +454,7 @@ public class BasicAttributeContext implements AttributeContext, Serializable { for (Map.Entry<String, Attribute> entry : attributes.entrySet()) { Attribute toCopy = entry.getValue(); if (toCopy != null) { - retValue.put(entry.getKey(), toCopy.clone()); + retValue.put(entry.getKey(), toCopy.copy()); } } return retValue; diff --git a/plugins/tiles/src/main/java/org/apache/tiles/api/ListAttribute.java b/plugins/tiles/src/main/java/org/apache/tiles/api/ListAttribute.java index 227380af0..67b329443 100644 --- a/plugins/tiles/src/main/java/org/apache/tiles/api/ListAttribute.java +++ b/plugins/tiles/src/main/java/org/apache/tiles/api/ListAttribute.java @@ -61,7 +61,7 @@ public class ListAttribute extends Attribute { List<Attribute> attributes = new ArrayList<>(attributesToCopy.size()); for (Attribute attribute : attributesToCopy) { if (attribute != null) { - attributes.add(attribute.clone()); + attributes.add(attribute.copy()); } else { attributes.add(null); } @@ -135,11 +135,10 @@ public class ListAttribute extends Attribute { * @param parent The parent list attribute. * @since 2.1.0 */ - @SuppressWarnings("unchecked") public void inherit(ListAttribute parent) { List<Attribute> tempList = new ArrayList<>(); - tempList.addAll((List<Attribute>) parent.value); - tempList.addAll((List<Attribute>) value); + tempList.addAll(parent.getValue()); + tempList.addAll(getValue()); setValue(tempList); } @@ -164,7 +163,7 @@ public class ListAttribute extends Attribute { /** {@inheritDoc} */ @Override - public ListAttribute clone() { + public ListAttribute copy() { return new ListAttribute(this); } } diff --git a/plugins/tiles/src/test/java/org/apache/tiles/api/AttributeTest.java b/plugins/tiles/src/test/java/org/apache/tiles/api/AttributeTest.java index 5c46b42e0..703dde92b 100644 --- a/plugins/tiles/src/test/java/org/apache/tiles/api/AttributeTest.java +++ b/plugins/tiles/src/test/java/org/apache/tiles/api/AttributeTest.java @@ -225,7 +225,7 @@ public class AttributeTest { public void testClone() { Expression expression = new Expression("my.expression", "MYLANG"); Attribute attribute = new Attribute("my.value", expression, "role1,role2", "myrenderer"); - attribute = attribute.clone(); + attribute = attribute.copy(); assertEquals("my.value", attribute.getValue()); assertEquals("myrenderer", attribute.getRenderer()); Set<String> roles = new HashSet<>(); diff --git a/plugins/tiles/src/test/java/org/apache/tiles/api/ListAttributeTest.java b/plugins/tiles/src/test/java/org/apache/tiles/api/ListAttributeTest.java index 582f041e8..baa41fd7a 100644 --- a/plugins/tiles/src/test/java/org/apache/tiles/api/ListAttributeTest.java +++ b/plugins/tiles/src/test/java/org/apache/tiles/api/ListAttributeTest.java @@ -103,7 +103,7 @@ public class ListAttributeTest { list.add(new Attribute("value2")); attribute.setValue(list); attribute.setInherit(true); - ListAttribute toCheck = attribute.clone(); + ListAttribute toCheck = attribute.copy(); assertEquals(attribute, toCheck); } } diff --git a/plugins/tiles/src/test/java/org/apache/tiles/request/collection/HeaderValuesCollectionTest.java b/plugins/tiles/src/test/java/org/apache/tiles/request/collection/HeaderValuesCollectionTest.java index 8a4069171..36f9bd2e0 100644 --- a/plugins/tiles/src/test/java/org/apache/tiles/request/collection/HeaderValuesCollectionTest.java +++ b/plugins/tiles/src/test/java/org/apache/tiles/request/collection/HeaderValuesCollectionTest.java @@ -42,7 +42,6 @@ import static org.junit.Assert.assertTrue; */ public class HeaderValuesCollectionTest { - /** * The extractor to use. */ @@ -245,9 +244,10 @@ public class HeaderValuesCollectionTest { expect(extractor.getKeys()).andReturn(keys); expect(keys.hasMoreElements()).andReturn(true); + expect(keys.hasMoreElements()).andReturn(true); expect(keys.nextElement()).andReturn("two"); - expect(extractor.getValues("two")).andReturn(values2); + expect(values2.hasMoreElements()).andReturn(true); expect(values2.nextElement()).andReturn("value2"); expect(values2.hasMoreElements()).andReturn(true); diff --git a/plugins/tiles/src/test/java/org/apache/tiles/request/collection/HeaderValuesMapEntrySetTest.java b/plugins/tiles/src/test/java/org/apache/tiles/request/collection/HeaderValuesMapEntrySetTest.java index 344151c52..77218414d 100644 --- a/plugins/tiles/src/test/java/org/apache/tiles/request/collection/HeaderValuesMapEntrySetTest.java +++ b/plugins/tiles/src/test/java/org/apache/tiles/request/collection/HeaderValuesMapEntrySetTest.java @@ -180,6 +180,7 @@ public class HeaderValuesMapEntrySetTest { expect(extractor.getKeys()).andReturn(keys); expect(keys.hasMoreElements()).andReturn(true); + expect(keys.hasMoreElements()).andReturn(true); expect(keys.nextElement()).andReturn("two"); expect(extractor.getValues("two")).andReturn(values2); @@ -192,8 +193,7 @@ public class HeaderValuesMapEntrySetTest { replay(extractor, keys, values2); Iterator<Map.Entry<String, String[]>> entryIt = entrySet.iterator(); assertTrue(entryIt.hasNext()); - MapEntryArrayValues<String, String> entry = new MapEntryArrayValues<>( - "two", new String[]{"value2", "value3"}, false); + MapEntryArrayValues<String, String> entry = new MapEntryArrayValues<>("two", new String[]{"value2", "value3"}, false); assertEquals(entry, entryIt.next()); verify(extractor, keys, values2); } diff --git a/plugins/tiles/src/test/java/org/apache/tiles/request/collection/KeySetTest.java b/plugins/tiles/src/test/java/org/apache/tiles/request/collection/KeySetTest.java index f8fe60a31..452bb5123 100644 --- a/plugins/tiles/src/test/java/org/apache/tiles/request/collection/KeySetTest.java +++ b/plugins/tiles/src/test/java/org/apache/tiles/request/collection/KeySetTest.java @@ -42,7 +42,6 @@ import static org.junit.Assert.assertTrue; */ public class KeySetTest { - /** * The extractor to use. */ @@ -170,6 +169,7 @@ public class KeySetTest { expect(extractor.getKeys()).andReturn(keys); expect(keys.hasMoreElements()).andReturn(true); + expect(keys.hasMoreElements()).andReturn(true); expect(keys.nextElement()).andReturn("two"); replay(extractor, keys, values2); diff --git a/plugins/tiles/src/test/java/org/apache/tiles/request/collection/ReadOnlyEnumerationMapValuesCollectionTest.java b/plugins/tiles/src/test/java/org/apache/tiles/request/collection/ReadOnlyEnumerationMapValuesCollectionTest.java index 4a9862f82..b37dbdc03 100644 --- a/plugins/tiles/src/test/java/org/apache/tiles/request/collection/ReadOnlyEnumerationMapValuesCollectionTest.java +++ b/plugins/tiles/src/test/java/org/apache/tiles/request/collection/ReadOnlyEnumerationMapValuesCollectionTest.java @@ -41,6 +41,7 @@ import static org.junit.Assert.assertTrue; * Tests {@link ReadOnlyEnumerationMap#values()}. */ public class ReadOnlyEnumerationMapValuesCollectionTest { + /** * The extractor to use. */ @@ -188,6 +189,7 @@ public class ReadOnlyEnumerationMapValuesCollectionTest { expect(extractor.getKeys()).andReturn(keys); expect(keys.hasMoreElements()).andReturn(true); + expect(keys.hasMoreElements()).andReturn(true); expect(keys.nextElement()).andReturn("two"); expect(extractor.getValue("two")).andReturn(2); @@ -276,7 +278,7 @@ public class ReadOnlyEnumerationMapValuesCollectionTest { expect(extractor.getValue("one")).andReturn(1); expect(extractor.getValue("two")).andReturn(2); - Integer[] entryArray = new Integer[] {1, 2}; + Integer[] entryArray = new Integer[]{1, 2}; replay(extractor, keys); assertArrayEquals(entryArray, coll.toArray()); @@ -300,7 +302,7 @@ public class ReadOnlyEnumerationMapValuesCollectionTest { expect(extractor.getValue("one")).andReturn(1); expect(extractor.getValue("two")).andReturn(2); - Integer[] entryArray = new Integer[] {1, 2}; + Integer[] entryArray = new Integer[]{1, 2}; replay(extractor, keys); Integer[] realArray = new Integer[2];