private void setMultiplicity(MutableItemDefinition itemDef, XSParticle particle, XSAnnotation annotation, boolean topLevel) { if (topLevel || particle == null) { itemDef.setMinOccurs(0); Element maxOccursAnnotation = SchemaProcessorUtil.getAnnotationElement(annotation, A_MAX_OCCURS); if (maxOccursAnnotation != null) { String maxOccursString = maxOccursAnnotation.getTextContent(); int maxOccurs = XsdTypeMapper.multiplicityToInteger(maxOccursString); itemDef.setMaxOccurs(maxOccurs); } else { itemDef.setMaxOccurs(-1); } } else { // itemDef.setMinOccurs(particle.getMinOccurs()); // itemDef.setMaxOccurs(particle.getMaxOccurs()); itemDef.setMinOccurs(particle.getMinOccurs().intValue()); itemDef.setMaxOccurs(particle.getMaxOccurs().intValue()); } }
outputDefinition.toMutable().setMaxOccurs(-1); } else { outputDefinition.toMutable().setMaxOccurs(1);
private <T> List<PrismPropertyValue<T>> evaluateExpression(ScriptExpressionEvaluatorType scriptType, QName typeName, boolean scalar, ExpressionVariables variables, String shortDesc, OperationResult opResult) throws ExpressionEvaluationException, ObjectNotFoundException, SchemaException, CommunicationException, ConfigurationException, SecurityViolationException { MutableItemDefinition outputDefinition = PrismTestUtil.getPrismContext().definitionFactory().createPropertyDefinition(PROPERTY_NAME, typeName); if (!scalar) { outputDefinition.setMaxOccurs(-1); } return evaluateExpression(scriptType, outputDefinition, variables, shortDesc, opResult); }
if (returnTypeDef == null) { returnTypeDef = (D) prismContext.definitionFactory().createPropertyDefinition(SchemaConstantsGenerated.C_VALUE, returnType); returnTypeDef.toMutable().setMaxOccurs(functionToExecute.getReturnMultiplicity() != null && functionToExecute.getReturnMultiplicity() == ExpressionReturnMultiplicityType.SINGLE ? 1 : -1);
resultDef.setMaxOccurs(-1);
itemDefinition.toMutable().setMaxOccurs(-1);
mutableDef.setMaxOccurs(XsdTypeMapper.multiplicityToInteger(limitationsType.getMaxOccurs()));