- if (attributeIfc.getOpenType() instanceof SimpleType<?>)
- return new SimpleAttributeWritingStrategy(document, key);
- else if (attributeIfc.getOpenType() instanceof ArrayType<?>) {
- AttributeWritingStrategy innerStrategy = new SimpleAttributeWritingStrategy(document, key);
- return new ArrayAttributeWritingStrategy(innerStrategy);
- }
- throw new IllegalStateException(JavaAttribute.class + " can only provide open type " + SimpleType.class
- + " or " + ArrayType.class);
+ @Override
+ protected AttributeWritingStrategy caseJavaArrayAttribute(ArrayType<?> openType) {
+ AttributeWritingStrategy innerStrategy = new SimpleAttributeWritingStrategy(document, key);
+ return new ArrayAttributeWritingStrategy(innerStrategy);