import org.opendaylight.mdsal.binding.model.api.AnnotationType
import org.opendaylight.mdsal.binding.model.api.Constant
import org.opendaylight.mdsal.binding.model.api.Enumeration
-import org.opendaylight.mdsal.binding.model.api.GeneratedTransferObject
import org.opendaylight.mdsal.binding.model.api.GeneratedType
import org.opendaylight.mdsal.binding.model.api.MethodSignature
import org.opendaylight.mdsal.binding.model.util.TypeConstants
def private generateInnerClasses() '''
«IF !enclosedGeneratedTypes.empty»
«FOR innerClass : enclosedGeneratedTypes SEPARATOR "\n"»
- «IF (innerClass instanceof GeneratedTransferObject)»
- «IF innerClass.unionType»
- «val unionTemplate = new UnionTemplate(innerClass)»
- «unionTemplate.generateAsInnerClass»
- «addImports(unionTemplate)»
- «ELSE»
- «val classTemplate = new ClassTemplate(innerClass)»
- «classTemplate.generateAsInnerClass»
- «addImports(classTemplate)»
- «ENDIF»
-
- «ENDIF»
+ «generateInnerClass(innerClass)»
«ENDFOR»
«ENDIF»
'''
def private generateEnums() '''
«IF !enums.empty»
«FOR e : enums SEPARATOR "\n"»
- «val enumTemplate = new EnumTemplate(e)»
+ «val enumTemplate = new EnumTemplate(javaType.getEnclosedType(e.identifier), e)»
«enumTemplate.generateAsInnerClass»
«ENDFOR»
«ENDIF»