use of org.osate.aadl2.NamedValue in project osate2 by osate.
the class Aadl2LabelProvider method text.
String text(PropertyExpression pe) {
if (pe instanceof BooleanLiteral) {
return "boolean " + ((BooleanLiteral) pe).getValue() + "";
}
if (pe instanceof RealLiteral) {
return "real " + ((RealLiteral) pe).getValue() + "";
}
if (pe instanceof IntegerLiteral) {
return text((IntegerLiteral) pe);
}
if (pe instanceof StringLiteral) {
return text((StringLiteral) pe);
}
if (pe instanceof NamedValue) {
return text((NamedValue) pe);
}
if (pe instanceof ReferenceValue) {
ReferenceValue rv = ((ReferenceValue) pe);
List<ContainmentPathElement> cpe = rv.getContainmentPathElements();
return "reference " + cpe.get(0).getNamedElement().getName();
}
if (pe instanceof RangeValue) {
return text(((RangeValue) pe));
}
if (pe instanceof ListValue) {
return text(((ListValue) pe));
}
if (pe instanceof RecordValue) {
return text(((RecordValue) pe));
}
// OsateDebug.osateDebug("unknown pe=" + pe);
return null;
}
use of org.osate.aadl2.NamedValue in project osate2 by osate.
the class PropertyUtils method createEnumValue.
/**
* Create a enumeration value from an enumeration literal.
*
* @param literal The enumeration literal
* @return An enumeration value for the given literal
* @throws IllegalArgumentException Thrown if literal is null
*/
public static NamedValue createEnumValue(EnumerationLiteral literal) throws IllegalArgumentException {
if (literal == null) {
throw new IllegalArgumentException("Enumeration literal is null.");
}
NamedValue newPropertyValue = Aadl2Factory.eINSTANCE.createNamedValue();
newPropertyValue.setNamedValue(literal);
return newPropertyValue;
}
use of org.osate.aadl2.NamedValue in project osate2 by osate.
the class GeneratedUnits method toPropertyExpression.
default NamedValue toPropertyExpression(ResourceSet resourceSet) {
NamedValue value = Aadl2Factory.eINSTANCE.createNamedValue();
value.setNamedValue(toUnitLiteral(resourceSet));
return value;
}
use of org.osate.aadl2.NamedValue in project osate2 by osate.
the class GetProperties method getAllowedDispatchProtocol.
public static List<EnumerationLiteral> getAllowedDispatchProtocol(NamedElement ne) {
try {
List<EnumerationLiteral> res = new ArrayList<>();
Property allowedDispatchProtocol = lookupPropertyDefinition(ne, DeploymentProperties._NAME, DeploymentProperties.ALLOWED_DISPATCH_PROTOCOL);
List<? extends PropertyExpression> propertyValues = ne.getPropertyValueList(allowedDispatchProtocol);
for (PropertyExpression propertyExpression : propertyValues) {
res.add((EnumerationLiteral) ((NamedValue) propertyExpression).getNamedValue());
}
return res;
} catch (PropertyLookupException e) {
return Collections.emptyList();
}
}
use of org.osate.aadl2.NamedValue in project osate2 by osate.
the class AbstractPropertiesSemanticSequencer method sequence.
@Override
public void sequence(ISerializationContext context, EObject semanticObject) {
EPackage epackage = semanticObject.eClass().getEPackage();
ParserRule rule = context.getParserRule();
Action action = context.getAssignedAction();
Set<Parameter> parameters = context.getEnabledBooleanParameters();
if (epackage == Aadl2Package.eINSTANCE)
switch(semanticObject.eClass().getClassifierID()) {
case Aadl2Package.ARRAY_RANGE:
sequence_ArrayRange(context, (ArrayRange) semanticObject);
return;
case Aadl2Package.BASIC_PROPERTY_ASSOCIATION:
sequence_FieldPropertyAssociation(context, (BasicPropertyAssociation) semanticObject);
return;
case Aadl2Package.BOOLEAN_LITERAL:
sequence_BooleanLiteral(context, (BooleanLiteral) semanticObject);
return;
case Aadl2Package.CLASSIFIER_VALUE:
sequence_ComponentClassifierTerm(context, (ClassifierValue) semanticObject);
return;
case Aadl2Package.COMPUTED_VALUE:
sequence_ComputedTerm(context, (ComputedValue) semanticObject);
return;
case Aadl2Package.CONTAINED_NAMED_ELEMENT:
sequence_ContainmentPath(context, (ContainedNamedElement) semanticObject);
return;
case Aadl2Package.CONTAINMENT_PATH_ELEMENT:
sequence_ContainmentPathElement(context, (ContainmentPathElement) semanticObject);
return;
case Aadl2Package.INTEGER_LITERAL:
sequence_IntegerTerm(context, (IntegerLiteral) semanticObject);
return;
case Aadl2Package.LIST_VALUE:
sequence_ListTerm(context, (ListValue) semanticObject);
return;
case Aadl2Package.MODAL_PROPERTY_VALUE:
if (rule == grammarAccess.getModalPropertyValueRule()) {
sequence_ModalPropertyValue(context, (ModalPropertyValue) semanticObject);
return;
} else if (rule == grammarAccess.getOptionalModalPropertyValueRule()) {
sequence_OptionalModalPropertyValue(context, (ModalPropertyValue) semanticObject);
return;
} else if (rule == grammarAccess.getPropertyValueRule()) {
sequence_PropertyValue(context, (ModalPropertyValue) semanticObject);
return;
} else
break;
case Aadl2Package.NAMED_VALUE:
if (rule == grammarAccess.getConstantValueRule() || rule == grammarAccess.getNumAltRule()) {
sequence_ConstantValue(context, (NamedValue) semanticObject);
return;
} else if (rule == grammarAccess.getPropertyExpressionRule() || rule == grammarAccess.getLiteralorReferenceTermRule()) {
sequence_LiteralorReferenceTerm(context, (NamedValue) semanticObject);
return;
} else
break;
case Aadl2Package.OPERATION:
sequence_SignedConstant(context, (Operation) semanticObject);
return;
case Aadl2Package.PROPERTY_ASSOCIATION:
if (rule == grammarAccess.getBasicPropertyAssociationRule()) {
sequence_BasicPropertyAssociation(context, (PropertyAssociation) semanticObject);
return;
} else if (rule == grammarAccess.getPModelRule() || rule == grammarAccess.getContainedPropertyAssociationRule()) {
sequence_ContainedPropertyAssociation(context, (PropertyAssociation) semanticObject);
return;
} else if (rule == grammarAccess.getPropertyAssociationRule()) {
sequence_PropertyAssociation(context, (PropertyAssociation) semanticObject);
return;
} else
break;
case Aadl2Package.RANGE_VALUE:
sequence_NumericRangeTerm(context, (RangeValue) semanticObject);
return;
case Aadl2Package.REAL_LITERAL:
sequence_RealTerm(context, (RealLiteral) semanticObject);
return;
case Aadl2Package.RECORD_VALUE:
if (rule == grammarAccess.getOldRecordTermRule()) {
sequence_OldRecordTerm(context, (RecordValue) semanticObject);
return;
} else if (rule == grammarAccess.getPropertyExpressionRule() || rule == grammarAccess.getRecordTermRule()) {
sequence_RecordTerm(context, (RecordValue) semanticObject);
return;
} else
break;
case Aadl2Package.REFERENCE_VALUE:
sequence_ReferenceTerm(context, (ReferenceValue) semanticObject);
return;
case Aadl2Package.STRING_LITERAL:
sequence_StringTerm(context, (StringLiteral) semanticObject);
return;
}
if (errorAcceptor != null)
errorAcceptor.accept(diagnosticProvider.createInvalidContextOrTypeDiagnostic(semanticObject, context));
}
Aggregations