AMImageAttributeMapping { public static AMImageAttributeMapping fromProperties( Map<String, String> properties) { if (properties == null) { throw new IllegalArgumentException("Properties map is null"); } return new AMImageAttributeMapping( HashMapBuilder.<AMAttribute<AMImageProcessor, ?>, Optional<?>>put( AMAttribute.getConfigurationUuidAMAttribute(), _getValueOptional( properties, AMAttribute.getConfigurationUuidAMAttribute()) ).put( AMAttribute.getContentLengthAMAttribute(), _getValueOptional( properties, AMAttribute.getContentLengthAMAttribute()) ).put( AMAttribute.getContentTypeAMAttribute(), _getValueOptional( properties, AMAttribute.getContentTypeAMAttribute()) ).put( AMAttribute.getFileNameAMAttribute(), _getValueOptional( properties, AMAttribute.getFileNameAMAttribute()) ).put( AMImageAttribute.AM_IMAGE_ATTRIBUTE_HEIGHT, _getValueOptional( properties, AMImageAttribute.AM_IMAGE_ATTRIBUTE_HEIGHT) ).put( AMImageAttribute.AM_IMAGE_ATTRIBUTE_WIDTH, _getValueOptional( properties, AMImageAttribute.AM_IMAGE_ATTRIBUTE_WIDTH) ).build()); } protected  AMImageAttributeMapping(
		Map<AMAttribute<AMImageProcessor, ?>, Optional<?>> optionals); static AMImageAttributeMapping fromProperties(
		Map<String, String> properties); Optional<V> getValueOptional(
		AMAttribute<AMImageProcessor, V> amAttribute);  }
@Test(expected = IllegalArgumentException.class) public void testFailWhenCreatingFromNullMap() { AMImageAttributeMapping.fromProperties(null); }