Loading plugins/org.etsi.mts.tdl.common/src/org/etsi/mts/tdl/TDLValueConverterService.java +39 −0 Original line number Diff line number Diff line Loading @@ -9,6 +9,7 @@ import org.eclipse.xtext.nodemodel.INode; public class TDLValueConverterService extends EString2XtextConverter { private IdentifierValueConverter identifierValueConverter; private QIdentifierValueConverter qidentifierValueConverter; @ValueConverter(rule = "org.etsi.mts.tdl.TDLtx.Identifier") public IValueConverter<String> Identifier() { Loading @@ -21,6 +22,18 @@ public class TDLValueConverterService extends EString2XtextConverter { public IValueConverter<String> TDLtxIdentifier() { return this.Identifier(); } @ValueConverter(rule = "org.etsi.mts.tdl.TDLtx.QIdentifier") public IValueConverter<String> QIdentifier() { if (this.qidentifierValueConverter == null) this.qidentifierValueConverter = new QIdentifierValueConverter(this.ID()); return this.qidentifierValueConverter; } @ValueConverter(rule = "QIdentifier") public IValueConverter<String> TDLtxQIdentifier() { return this.QIdentifier(); } } class IdentifierValueConverter extends AbstractValueConverter<String> { Loading @@ -41,3 +54,29 @@ class IdentifierValueConverter extends AbstractValueConverter<String> { } } class QIdentifierValueConverter extends IdentifierValueConverter { public QIdentifierValueConverter(IValueConverter<String> iValueConverter) { super(iValueConverter); } @Override public String toValue(String string, INode node) throws ValueConverterException { String[] parts = string.split("\\."); for (int i = 0; i < parts.length; i++) { parts[i] = super.toValue(parts[i], node); } return String.join(".", parts); } @Override public String toString(String value) throws ValueConverterException { String[] parts = value.split("\\."); for (int i = 0; i < parts.length; i++) { parts[i] = super.toString(parts[i]); } return String.join(".", parts); } } No newline at end of file Loading
plugins/org.etsi.mts.tdl.common/src/org/etsi/mts/tdl/TDLValueConverterService.java +39 −0 Original line number Diff line number Diff line Loading @@ -9,6 +9,7 @@ import org.eclipse.xtext.nodemodel.INode; public class TDLValueConverterService extends EString2XtextConverter { private IdentifierValueConverter identifierValueConverter; private QIdentifierValueConverter qidentifierValueConverter; @ValueConverter(rule = "org.etsi.mts.tdl.TDLtx.Identifier") public IValueConverter<String> Identifier() { Loading @@ -21,6 +22,18 @@ public class TDLValueConverterService extends EString2XtextConverter { public IValueConverter<String> TDLtxIdentifier() { return this.Identifier(); } @ValueConverter(rule = "org.etsi.mts.tdl.TDLtx.QIdentifier") public IValueConverter<String> QIdentifier() { if (this.qidentifierValueConverter == null) this.qidentifierValueConverter = new QIdentifierValueConverter(this.ID()); return this.qidentifierValueConverter; } @ValueConverter(rule = "QIdentifier") public IValueConverter<String> TDLtxQIdentifier() { return this.QIdentifier(); } } class IdentifierValueConverter extends AbstractValueConverter<String> { Loading @@ -41,3 +54,29 @@ class IdentifierValueConverter extends AbstractValueConverter<String> { } } class QIdentifierValueConverter extends IdentifierValueConverter { public QIdentifierValueConverter(IValueConverter<String> iValueConverter) { super(iValueConverter); } @Override public String toValue(String string, INode node) throws ValueConverterException { String[] parts = string.split("\\."); for (int i = 0; i < parts.length; i++) { parts[i] = super.toValue(parts[i], node); } return String.join(".", parts); } @Override public String toString(String value) throws ValueConverterException { String[] parts = value.split("\\."); for (int i = 0; i < parts.length; i++) { parts[i] = super.toString(parts[i]); } return String.join(".", parts); } } No newline at end of file