Commit cfb4816e authored by Philip Makedonski's avatar Philip Makedonski
Browse files

+ prefixed naming for disambiguation (may be overkill)

parent d2fd8f17
Loading
Loading
Loading
Loading
+13 −5
Original line number Diff line number Diff line
@@ -103,15 +103,22 @@ public class Yang2TDLTranslator extends AbstractTranslator {
		}
	}


	private DataType translate(DataSchemaNode c) {
		String name = cleanName(c.getQName().getLocalName());
		return translate(c, null);
	}
	
	private DataType translate(DataSchemaNode c, String parent) {
		String baseName = cleanName(c.getQName().getLocalName());
		String name = baseName;
		if (parent != null) {
			name = parent+"___"+name;
		}
		if (c instanceof ContainerSchemaNode) {
			//create structured data type
			System.out.println("!c "+c.getQName().getLocalName() + " : " );
			StructuredDataType dataType = getStructuredDataTypeFor(name);
			for (DataSchemaNode child : ((ContainerSchemaNode) c).getChildNodes()) {
				DataType memberType = translate(child);
				DataType memberType = translate(child, baseName);
				String propertyName = child.getQName().getLocalName();
				Member m = getContentWithName((String) propertyName, dataType, tdlPackage.Literals.MEMBER);
				m.setDataType(memberType);
@@ -128,7 +135,7 @@ public class Yang2TDLTranslator extends AbstractTranslator {
					tdlPackage.Literals.COLLECTION_DATA_TYPE);
			collectionType.setItemType(itemType);
			for (DataSchemaNode child : ((ListSchemaNode) c).getChildNodes()) {
				DataType memberType = translate(child);
				DataType memberType = translate(child, baseName);
				String propertyName = child.getQName().getLocalName();
				Member m = getContentWithName((String) propertyName, itemType, tdlPackage.Literals.MEMBER);
				m.setDataType(memberType);
@@ -161,6 +168,7 @@ public class Yang2TDLTranslator extends AbstractTranslator {
		} else if (c instanceof EmptyLeafEffectiveStatement) {
			System.out.println("!e "+c.getQName().getLocalName() + " : " + ((EmptyLeafEffectiveStatement) c).getType().getQName());
			String typeName = ((EmptyLeafEffectiveStatement) c).getType().getQName().getLocalName();
			typeName = name; //TODO: fine?
			SimpleDataType dataType = getSimpleDataTypeFor(typeName);
			TypeDefinition<?> baseType = ((EmptyLeafEffectiveStatement)c).getType().getBaseType();
			//TODO: what if extension is already present?
@@ -185,7 +193,7 @@ public class Yang2TDLTranslator extends AbstractTranslator {
			//TODO: need to skip cases?
			StructuredDataType dataType = getStructuredDataTypeFor(name);
			for (CaseSchemaNode child : ((EmptyChoiceEffectiveStatement) c).getCases()) {
				DataType memberType = translate(child);
				DataType memberType = translate(child, baseName);
				String propertyName = child.getQName().getLocalName();
				Member m = getContentWithName((String) propertyName, dataType, tdlPackage.Literals.MEMBER);
				m.setDataType(memberType);