Author: rgodfrey
Date: Mon Feb 2 20:50:15 2015
New Revision: 1656566
URL: http://svn.apache.org/r1656566
Log:
QPID-6341 : Add test and allow a default alt text for oversized values
Modified:
qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/ConfiguredAutomatedAttribute.java
qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/ConfiguredDerivedAttribute.java
qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/ConfiguredObjectAttribute.java
qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/ManagedAttribute.java
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/rest/ConfiguredObjectToMapConverter.java
qpid/trunk/qpid/java/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/servlet/rest/ConfiguredObjectToMapConverterTest.java
Modified:
qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/ConfiguredAutomatedAttribute.java
URL:
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/ConfiguredAutomatedAttribute.java?rev=1656566&r1=1656565&r2=1656566&view=diff
==============================================================================
---
qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/ConfiguredAutomatedAttribute.java
(original)
+++
qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/ConfiguredAutomatedAttribute.java
Mon Feb 2 20:50:15 2015
@@ -129,6 +129,12 @@ public class ConfiguredAutomatedAttribut
return _annotation.oversize();
}
+ @Override
+ public String getOversizedAltText()
+ {
+ return _annotation.oversizedAltText();
+ }
+
public String getDescription()
{
return _annotation.description();
Modified:
qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/ConfiguredDerivedAttribute.java
URL:
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/ConfiguredDerivedAttribute.java?rev=1656566&r1=1656565&r2=1656566&view=diff
==============================================================================
---
qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/ConfiguredDerivedAttribute.java
(original)
+++
qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/ConfiguredDerivedAttribute.java
Mon Feb 2 20:50:15 2015
@@ -60,6 +60,13 @@ public class ConfiguredDerivedAttribute<
return _annotation.oversize();
}
+ @Override
+ public String getOversizedAltText()
+ {
+ return "";
+ }
+
+
public String getDescription()
{
return _annotation.description();
Modified:
qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/ConfiguredObjectAttribute.java
URL:
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/ConfiguredObjectAttribute.java?rev=1656566&r1=1656565&r2=1656566&view=diff
==============================================================================
---
qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/ConfiguredObjectAttribute.java
(original)
+++
qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/ConfiguredObjectAttribute.java
Mon Feb 2 20:50:15 2015
@@ -45,6 +45,8 @@ public abstract class ConfiguredObjectAt
public abstract boolean isOversized();
+ public abstract String getOversizedAltText();
+
public abstract String getDescription();
public T convert(final Object value, C object)
Modified:
qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/ManagedAttribute.java
URL:
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/ManagedAttribute.java?rev=1656566&r1=1656565&r2=1656566&view=diff
==============================================================================
---
qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/ManagedAttribute.java
(original)
+++
qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/ManagedAttribute.java
Mon Feb 2 20:50:15 2015
@@ -36,4 +36,5 @@ public @interface ManagedAttribute
String description() default "";
String[] validValues() default {};
boolean oversize() default false;
+ String oversizedAltText() default "";
}
Modified:
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/rest/ConfiguredObjectToMapConverter.java
URL:
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/rest/ConfiguredObjectToMapConverter.java?rev=1656566&r1=1656565&r2=1656566&view=diff
==============================================================================
---
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/rest/ConfiguredObjectToMapConverter.java
(original)
+++
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/rest/ConfiguredObjectToMapConverter.java
Mon Feb 2 20:50:15 2015
@@ -164,7 +164,12 @@ public class ConfiguredObjectToMapConver
String valueString = String.valueOf(value);
if(valueString.length() > oversizeThreshold)
{
- object.put(name,
String.valueOf(value).substring(0,oversizeThreshold-4) + "...");
+
+ String replacementValue =
"".equals(attribute.getOversizedAltText())
+ ? String.valueOf(value).substring(0,
oversizeThreshold - 4) + "..."
+ : attribute.getOversizedAltText();
+
+ object.put(name, replacementValue);
}
else
{
Modified:
qpid/trunk/qpid/java/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/servlet/rest/ConfiguredObjectToMapConverterTest.java
URL:
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/servlet/rest/ConfiguredObjectToMapConverterTest.java?rev=1656566&r1=1656565&r2=1656566&view=diff
==============================================================================
---
qpid/trunk/qpid/java/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/servlet/rest/ConfiguredObjectToMapConverterTest.java
(original)
+++
qpid/trunk/qpid/java/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/servlet/rest/ConfiguredObjectToMapConverterTest.java
Mon Feb 2 20:50:15 2015
@@ -28,6 +28,7 @@ import static org.mockito.Mockito.when;
import java.util.ArrayList;
import java.util.Arrays;
+import java.util.Collection;
import java.util.Collections;
import java.util.HashMap;
import java.util.HashSet;
@@ -216,6 +217,85 @@ public class ConfiguredObjectToMapConver
}
+ public void testOversizedAttributes()
+ {
+
+ Model model = createTestModel();
+ ConfiguredObjectTypeRegistry typeRegistry = model.getTypeRegistry();
+ final Map<String, ConfiguredObjectAttribute<?, ?>> attributeTypes =
+ typeRegistry.getAttributeTypes(TestChild.class);
+ final ConfiguredObjectAttribute longAttr =
mock(ConfiguredObjectAttribute.class);
+ when(longAttr.isOversized()).thenReturn(true);
+ when(longAttr.getOversizedAltText()).thenReturn("");
+ when(attributeTypes.get(eq("longAttr"))).thenReturn(longAttr);
+
+ TestChild mockChild = mock(TestChild.class);
+ when(mockChild.getModel()).thenReturn(model);
+ when(_configuredObject.getModel()).thenReturn(model);
+ configureMockToReturnOneAttribute(mockChild, "longAttr", "this is not
long");
+
when(_configuredObject.getChildren(TestChild.class)).thenReturn(Arrays.asList(mockChild));
+
+
+ Map<String, Object> resultMap =
_converter.convertObjectToMap(_configuredObject,
+
ConfiguredObject.class,
+ 1,
+
false,
+
false,
+
false,
+
false,
+
20);
+ Object children = resultMap.get("testchilds");
+ assertNotNull(children);
+ assertTrue(children instanceof Collection);
+ assertTrue(((Collection)children).size()==1);
+ Object attrs = ((Collection)children).iterator().next();
+ assertTrue(attrs instanceof Map);
+ assertEquals("this is not long", ((Map) attrs).get("longAttr"));
+
+
+
+ resultMap = _converter.convertObjectToMap(_configuredObject,
+ ConfiguredObject.class,
+ 1,
+ false,
+ false,
+ false,
+ false,
+ 8);
+
+ children = resultMap.get("testchilds");
+ assertNotNull(children);
+ assertTrue(children instanceof Collection);
+ assertTrue(((Collection)children).size()==1);
+ attrs = ((Collection)children).iterator().next();
+ assertTrue(attrs instanceof Map);
+ assertEquals("this...", ((Map) attrs).get("longAttr"));
+
+
+
+
+ when(longAttr.getOversizedAltText()).thenReturn("test alt text");
+
+ resultMap = _converter.convertObjectToMap(_configuredObject,
+ ConfiguredObject.class,
+ 1,
+ false,
+ false,
+ false,
+ false,
+ 8);
+
+ children = resultMap.get("testchilds");
+ assertNotNull(children);
+ assertTrue(children instanceof Collection);
+ assertTrue(((Collection)children).size()==1);
+ attrs = ((Collection)children).iterator().next();
+ assertTrue(attrs instanceof Map);
+ assertEquals("test alt text", ((Map) attrs).get("longAttr"));
+
+
+ }
+
private Model createTestModel()
{
Model model = mock(Model.class);
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]