X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fsal%2Fyang-prototype%2Fcode-generator%2Fbinding-generator-impl%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fsal%2Fbinding%2Fgenerator%2Fimpl%2FGeneratedTypeBuilderImpl.java;fp=opendaylight%2Fsal%2Fyang-prototype%2Fcode-generator%2Fbinding-generator-impl%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fsal%2Fbinding%2Fgenerator%2Fimpl%2FGeneratedTypeBuilderImpl.java;h=2de2aaa332f20d2462e464a6162afd4bb3126408;hp=f6ed8f2d35d268c85fe09ebda35ea038e6f73c52;hb=bf58a4829b6dee61b9da7eddf66712cbb4c19cce;hpb=d8027ba3e8460eccce04fc40aeb7da81ed6d45e7 diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/main/java/org/opendaylight/controller/sal/binding/generator/impl/GeneratedTypeBuilderImpl.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/main/java/org/opendaylight/controller/sal/binding/generator/impl/GeneratedTypeBuilderImpl.java index f6ed8f2d35..2de2aaa332 100644 --- a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/main/java/org/opendaylight/controller/sal/binding/generator/impl/GeneratedTypeBuilderImpl.java +++ b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/main/java/org/opendaylight/controller/sal/binding/generator/impl/GeneratedTypeBuilderImpl.java @@ -1,543 +1,504 @@ -/* - * Copyright (c) 2013 Cisco Systems, Inc. and others. All rights reserved. - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0 which accompanies this distribution, - * and is available at http://www.eclipse.org/legal/epl-v10.html - */ -package org.opendaylight.controller.sal.binding.generator.impl; - -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.HashSet; -import java.util.List; -import java.util.Set; - -import org.opendaylight.controller.sal.binding.model.api.AccessModifier; -import org.opendaylight.controller.sal.binding.model.api.Constant; -import org.opendaylight.controller.sal.binding.model.api.Enumeration; -import org.opendaylight.controller.sal.binding.model.api.GeneratedType; -import org.opendaylight.controller.sal.binding.model.api.MethodSignature; -import org.opendaylight.controller.sal.binding.model.api.Type; -import org.opendaylight.controller.sal.binding.model.api.type.builder.ConstantBuilder; -import org.opendaylight.controller.sal.binding.model.api.type.builder.EnumBuilder; -import org.opendaylight.controller.sal.binding.model.api.type.builder.GeneratedTypeBuilder; -import org.opendaylight.controller.sal.binding.model.api.type.builder.MethodSignatureBuilder; - -public final class GeneratedTypeBuilderImpl implements GeneratedTypeBuilder { - - private static final String[] SET_VALUES = new String[] { "abstract", - "assert", "boolean", "break", "byte", "case", "catch", "char", - "class", "const", "continue", "default", "double", "do", "else", - "enum", "extends", "false", "final", "finally", "float", "for", - "goto", "if", "implements", "import", "instanceof", "int", - "interface", "long", "native", "new", "null", "package", "private", - "protected", "public", "return", "short", "static", "strictfp", - "super", "switch", "synchronized", "this", "throw", "throws", - "transient", "true", "try", "void", "volatile", "while" }; - - public static final Set JAVA_RESERVED_WORDS = new HashSet( - Arrays.asList(SET_VALUES)); - - private String packageName; - private String comment; - private final String name; - private final List enumDefinitions = new ArrayList(); - private final List constantDefintions = new ArrayList(); - private final List methodDefinitions = new ArrayList(); - - public GeneratedTypeBuilderImpl(final String packageName, final String name) { - this.packageName = validatePackage(packageName); - this.name = name; - } - - public static String validatePackage(final String packageName) { - if (packageName != null) { - final String[] packNameParts = packageName.split("\\."); - if (packNameParts != null) { - final StringBuilder builder = new StringBuilder(); - for (int i = 0; i < packNameParts.length; ++i) { - if (JAVA_RESERVED_WORDS.contains(packNameParts[i])) { - packNameParts[i] = "_" + packNameParts[i]; - } - if (i > 0) { - builder.append("."); - } - - builder.append(packNameParts[i]); - } - return builder.toString(); - } - } - return packageName; - } - - @Override - public Type getParentType() { - return this; - } - - @Override - public String getPackageName() { - return packageName; - } - - @Override - public String getName() { - return name; - } - - @Override - public void addComment(String comment) { - this.comment = comment; - } - - @Override - public ConstantBuilder addConstant(Type type, String name, Object value) { - final ConstantBuilder builder = new ConstantBuilderImpl(type, name, - value); - constantDefintions.add(builder); - - return builder; - } - - @Override - public EnumBuilder addEnumeration(final String name) { - final EnumBuilder builder = new EnumerationBuilderImpl(packageName, - name); - enumDefinitions.add(builder); - return builder; - } - - @Override - public MethodSignatureBuilder addMethod(final String name) { - final MethodSignatureBuilder builder = new MethodSignatureBuilderImpl( - this, name); - methodDefinitions.add(builder); - return builder; - } - - @Override - public GeneratedType toInstance() { - packageName = (packageName); - - return new GeneratedTypeImpl(this, packageName, name, enumDefinitions, - constantDefintions, methodDefinitions); - } - - private static final class MethodSignatureBuilderImpl implements - MethodSignatureBuilder { - private final String name; - private Type returnType; - private final List parameters; - private String comment = ""; - private final Type parent; - - public MethodSignatureBuilderImpl(final Type parent, final String name) { - super(); - this.name = name; - this.parent = parent; - parameters = new ArrayList(); - // TODO: move implementation elsewhere! - - } - - @Override - public void addReturnType(Type returnType) { - if (returnType != null) { - this.returnType = returnType; - } - } - - @Override - public void addParameter(Type type, String name) { - parameters.add(new MethodParameterImpl(name, type)); - } - - @Override - public void addComment(String comment) { - this.comment = comment; - } - - @Override - public MethodSignature toInstance(Type definingType) { - return new MethodSignatureImpl(definingType, name, comment, - returnType, parameters); - } - - @Override - public int hashCode() { - final int prime = 31; - int result = 1; - result = prime * result + ((name == null) ? 0 : name.hashCode()); - return result; - } - - @Override - public boolean equals(Object obj) { - if (this == obj) { - return true; - } - if (obj == null) { - return false; - } - if (getClass() != obj.getClass()) { - return false; - } - MethodSignatureBuilderImpl other = (MethodSignatureBuilderImpl) obj; - if (name == null) { - if (other.name != null) { - return false; - } - } else if (!name.equals(other.name)) { - return false; - } - return true; - } - - @Override - public String toString() { - StringBuilder builder = new StringBuilder(); - builder.append("MethodBuilderImpl [name="); - builder.append(name); - builder.append(", returnType="); - builder.append(returnType); - builder.append(", parameters="); - builder.append(parameters); - builder.append(", comment="); - builder.append(comment); - builder.append(", parent="); - builder.append(parent.getName()); - builder.append("]"); - return builder.toString(); - } - - } - - private static final class MethodSignatureImpl implements MethodSignature { - - private final String name; - private final String comment; - private final Type definingType; - private final Type returnType; - private final List params; - - public MethodSignatureImpl(final Type definingType, final String name, - final String comment, final Type returnType, - final List params) { - super(); - this.name = name; - this.comment = comment; - this.definingType = definingType; - this.returnType = returnType; - this.params = Collections.unmodifiableList(params); - } - - @Override - public String getName() { - return name; - } - - @Override - public String getComment() { - return comment; - } - - @Override - public Type getDefiningType() { - return definingType; - } - - @Override - public Type getReturnType() { - return returnType; - } - - @Override - public List getParameters() { - return params; - } - - @Override - public AccessModifier getAccessModifier() { - return AccessModifier.PUBLIC; - } - - @Override - public int hashCode() { - final int prime = 31; - int result = 1; - result = prime * result - + ((comment == null) ? 0 : comment.hashCode()); - result = prime * result + ((name == null) ? 0 : name.hashCode()); - result = prime * result - + ((params == null) ? 0 : params.hashCode()); - result = prime * result - + ((returnType == null) ? 0 : returnType.hashCode()); - - if (definingType != null) { - result = prime - * result - + ((definingType.getPackageName() == null) ? 0 - : definingType.getPackageName().hashCode()); - result = prime - * result - + ((definingType.getName() == null) ? 0 : definingType - .getName().hashCode()); - } - - return result; - } - - @Override - public boolean equals(Object obj) { - if (this == obj) { - return true; - } - if (obj == null) { - return false; - } - if (getClass() != obj.getClass()) { - return false; - } - MethodSignatureImpl other = (MethodSignatureImpl) obj; - if (comment == null) { - if (other.comment != null) { - return false; - } - } else if (!comment.equals(other.comment)) { - return false; - } - if (name == null) { - if (other.name != null) { - return false; - } - } else if (!name.equals(other.name)) { - return false; - } - if (params == null) { - if (other.params != null) { - return false; - } - } else if (!params.equals(other.params)) { - return false; - } - if (definingType == null) { - if (other.definingType != null) { - return false; - } - } else if ((definingType != null) && (other.definingType != null)) { - if (!definingType.getPackageName().equals( - other.definingType.getPackageName()) - && !definingType.getName().equals( - other.definingType.getName())) { - return false; - } - } - if (returnType == null) { - if (other.returnType != null) { - return false; - } - } else if (!returnType.equals(other.returnType)) { - return false; - } - return true; - } - - @Override - public String toString() { - StringBuilder builder = new StringBuilder(); - builder.append("MethodImpl [name="); - builder.append(name); - builder.append(", comment="); - builder.append(comment); - if (definingType != null) { - builder.append(", definingType="); - builder.append(definingType.getPackageName()); - builder.append("."); - builder.append(definingType.getName()); - } else { - builder.append(", definingType= null"); - } - builder.append(", returnType="); - builder.append(returnType); - builder.append(", params="); - builder.append(params); - builder.append("]"); - return builder.toString(); - } - } - - private static final class GeneratedTypeImpl implements GeneratedType { - - private final Type parent; - private final String packageName; - private final String name; - private final List enumDefinitions; - private final List constantDefintions; - private final List methodDefinitions; - - public GeneratedTypeImpl(final Type parent, final String packageName, - final String name, final List enumBuilders, - final List constantBuilders, - final List methodBuilders) { - super(); - this.parent = parent; - this.packageName = packageName; - this.name = name; - - this.constantDefintions = toUnmodifiableConstants(constantBuilders); - this.enumDefinitions = toUnmodifiableEnums(enumBuilders); - this.methodDefinitions = toUnmodifiableMethods(methodBuilders); - } - - private List toUnmodifiableMethods( - List methodBuilders) { - final List methods = new ArrayList(); - for (final MethodSignatureBuilder methodBuilder : methodBuilders) { - methods.add(methodBuilder.toInstance(this)); - } - return Collections.unmodifiableList(methods); - } - - private List toUnmodifiableEnums( - List enumBuilders) { - final List enums = new ArrayList(); - for (final EnumBuilder enumBuilder : enumBuilders) { - enums.add(enumBuilder.toInstance(this)); - } - return Collections.unmodifiableList(enums); - } - - private List toUnmodifiableConstants( - List constantBuilders) { - final List constants = new ArrayList(); - for (final ConstantBuilder enumBuilder : constantBuilders) { - constants.add(enumBuilder.toInstance(this)); - } - return Collections.unmodifiableList(constants); - } - - @Override - public String getPackageName() { - return packageName; - } - - @Override - public String getName() { - return name; - } - - @Override - public Type getParentType() { - return parent; - } - - @Override - public List getEnumDefintions() { - return enumDefinitions; - } - - @Override - public List getConstantDefinitions() { - return constantDefintions; - } - - @Override - public List getMethodDefinitions() { - return methodDefinitions; - } - - @Override - public int hashCode() { - final int prime = 31; - int result = 1; - result = prime - * result - + ((constantDefintions == null) ? 0 : constantDefintions - .hashCode()); - result = prime - * result - + ((enumDefinitions == null) ? 0 : enumDefinitions - .hashCode()); - result = prime - * result - + ((methodDefinitions == null) ? 0 : methodDefinitions - .hashCode()); - result = prime * result + ((name == null) ? 0 : name.hashCode()); - result = prime * result - + ((packageName == null) ? 0 : packageName.hashCode()); - return result; - } - - @Override - public boolean equals(Object obj) { - if (this == obj) { - return true; - } - if (obj == null) { - return false; - } - if (getClass() != obj.getClass()) { - return false; - } - GeneratedTypeImpl other = (GeneratedTypeImpl) obj; - if (constantDefintions == null) { - if (other.constantDefintions != null) { - return false; - } - } else if (!constantDefintions.equals(other.constantDefintions)) { - return false; - } - if (enumDefinitions == null) { - if (other.enumDefinitions != null) { - return false; - } - } else if (!enumDefinitions.equals(other.enumDefinitions)) { - return false; - } - if (methodDefinitions == null) { - if (other.methodDefinitions != null) { - return false; - } - } else if (!methodDefinitions.equals(other.methodDefinitions)) { - return false; - } - if (name == null) { - if (other.name != null) { - return false; - } - } else if (!name.equals(other.name)) { - return false; - } - if (packageName == null) { - if (other.packageName != null) { - return false; - } - } else if (!packageName.equals(other.packageName)) { - return false; - } - return true; - } - - @Override - public String toString() { - StringBuilder builder = new StringBuilder(); - builder.append("GeneratedTypeImpl [parent="); - builder.append(parent.getName()); - builder.append(", packageName="); - builder.append(packageName); - builder.append(", name="); - builder.append(name); - builder.append(", enumDefinitions="); - builder.append(enumDefinitions); - builder.append(", constantDefintions="); - builder.append(constantDefintions); - builder.append(", methodDefinitions="); - builder.append(methodDefinitions); - builder.append("]"); - return builder.toString(); - } - } -} +/* + * Copyright (c) 2013 Cisco Systems, Inc. and others. All rights reserved. + * + * This program and the accompanying materials are made available under the + * terms of the Eclipse Public License v1.0 which accompanies this distribution, + * and is available at http://www.eclipse.org/legal/epl-v10.html + */ +package org.opendaylight.controller.sal.binding.generator.impl; + +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; + +import org.opendaylight.controller.sal.binding.model.api.AccessModifier; +import org.opendaylight.controller.sal.binding.model.api.Constant; +import org.opendaylight.controller.sal.binding.model.api.Enumeration; +import org.opendaylight.controller.sal.binding.model.api.GeneratedType; +import org.opendaylight.controller.sal.binding.model.api.MethodSignature; +import org.opendaylight.controller.sal.binding.model.api.Type; +import org.opendaylight.controller.sal.binding.model.api.type.builder.ConstantBuilder; +import org.opendaylight.controller.sal.binding.model.api.type.builder.EnumBuilder; +import org.opendaylight.controller.sal.binding.model.api.type.builder.GeneratedTypeBuilder; +import org.opendaylight.controller.sal.binding.model.api.type.builder.MethodSignatureBuilder; + +public final class GeneratedTypeBuilderImpl implements GeneratedTypeBuilder { + + private final String packageName; + private String comment; + private final String name; + private final List enumDefinitions = new ArrayList(); + private final List constantDefintions = new ArrayList(); + private final List methodDefinitions = new ArrayList(); + + public GeneratedTypeBuilderImpl(final String packageName, final String name) { + this.packageName = packageName; + this.name = name; + } + + @Override + public Type getParentType() { + return this; + } + + @Override + public String getPackageName() { + return packageName; + } + + @Override + public String getName() { + return name; + } + + @Override + public void addComment(String comment) { + this.comment = comment; + } + + @Override + public ConstantBuilder addConstant(Type type, String name, Object value) { + final ConstantBuilder builder = new ConstantBuilderImpl(type, name, + value); + constantDefintions.add(builder); + + return builder; + } + + @Override + public EnumBuilder addEnumeration(final String name) { + final EnumBuilder builder = new EnumerationBuilderImpl(packageName, + name); + enumDefinitions.add(builder); + return builder; + } + + @Override + public MethodSignatureBuilder addMethod(final String name) { + final MethodSignatureBuilder builder = new MethodSignatureBuilderImpl( + this, name); + methodDefinitions.add(builder); + return builder; + } + + @Override + public GeneratedType toInstance() { + return new GeneratedTypeImpl(this, packageName, name, enumDefinitions, + constantDefintions, methodDefinitions); + } + + private static final class MethodSignatureBuilderImpl implements + MethodSignatureBuilder { + private final String name; + private Type returnType; + private final List parameters; + private String comment = ""; + private final Type parent; + + public MethodSignatureBuilderImpl(final Type parent, final String name) { + super(); + this.name = name; + this.parent = parent; + parameters = new ArrayList(); + //TODO: move implementation elsewhere! + + } + + @Override + public void addReturnType(Type returnType) { + if (returnType != null) { + this.returnType = returnType; + } + } + + @Override + public void addParameter(Type type, String name) { + parameters.add(new MethodParameterImpl(name, type)); + } + + @Override + public void addComment(String comment) { + this.comment = comment; + } + + @Override + public MethodSignature toInstance(Type definingType) { + return new MethodSignatureImpl(definingType, name, comment, + returnType, parameters); + } + + @Override + public int hashCode() { + final int prime = 31; + int result = 1; + result = prime * result + ((name == null) ? 0 : name.hashCode()); + return result; + } + + @Override + public boolean equals(Object obj) { + if (this == obj) { + return true; + } + if (obj == null) { + return false; + } + if (getClass() != obj.getClass()) { + return false; + } + MethodSignatureBuilderImpl other = (MethodSignatureBuilderImpl) obj; + if (name == null) { + if (other.name != null) { + return false; + } + } else if (!name.equals(other.name)) { + return false; + } + return true; + } + + @Override + public String toString() { + StringBuilder builder = new StringBuilder(); + builder.append("MethodBuilderImpl [name="); + builder.append(name); + builder.append(", returnType="); + builder.append(returnType); + builder.append(", parameters="); + builder.append(parameters); + builder.append(", comment="); + builder.append(comment); + builder.append(", parent="); + builder.append(parent.getName()); + builder.append("]"); + return builder.toString(); + } + + } + + private static final class MethodSignatureImpl implements MethodSignature { + + private final String name; + private final String comment; + private final Type definingType; + private final Type returnType; + private final List params; + + public MethodSignatureImpl(final Type definingType, final String name, + final String comment, final Type returnType, + final List params) { + super(); + this.name = name; + this.comment = comment; + this.definingType = definingType; + this.returnType = returnType; + this.params = Collections.unmodifiableList(params); + } + + @Override + public String getName() { + return name; + } + + @Override + public String getComment() { + return comment; + } + + @Override + public Type getDefiningType() { + return definingType; + } + + @Override + public Type getReturnType() { + return returnType; + } + + @Override + public List getParameters() { + return params; + } + + @Override + public AccessModifier getAccessModifier() { + return AccessModifier.PUBLIC; + } + + @Override + public int hashCode() { + final int prime = 31; + int result = 1; + result = prime * result + + ((comment == null) ? 0 : comment.hashCode()); + result = prime * result + ((name == null) ? 0 : name.hashCode()); + result = prime * result + + ((params == null) ? 0 : params.hashCode()); + result = prime * result + + ((returnType == null) ? 0 : returnType.hashCode()); + + if (definingType != null) { + result = prime + * result + + ((definingType.getPackageName() == null) ? 0 + : definingType.getPackageName().hashCode()); + result = prime + * result + + ((definingType.getName() == null) ? 0 : definingType + .getName().hashCode()); + } + + return result; + } + + @Override + public boolean equals(Object obj) { + if (this == obj) { + return true; + } + if (obj == null) { + return false; + } + if (getClass() != obj.getClass()) { + return false; + } + MethodSignatureImpl other = (MethodSignatureImpl) obj; + if (comment == null) { + if (other.comment != null) { + return false; + } + } else if (!comment.equals(other.comment)) { + return false; + } + if (name == null) { + if (other.name != null) { + return false; + } + } else if (!name.equals(other.name)) { + return false; + } + if (params == null) { + if (other.params != null) { + return false; + } + } else if (!params.equals(other.params)) { + return false; + } + if (definingType == null) { + if (other.definingType != null) { + return false; + } + } else if ((definingType != null) && (other.definingType != null)) { + if (!definingType.getPackageName().equals( + other.definingType.getPackageName()) + && !definingType.getName().equals( + other.definingType.getName())) { + return false; + } + } + if (returnType == null) { + if (other.returnType != null) { + return false; + } + } else if (!returnType.equals(other.returnType)) { + return false; + } + return true; + } + + @Override + public String toString() { + StringBuilder builder = new StringBuilder(); + builder.append("MethodImpl [name="); + builder.append(name); + builder.append(", comment="); + builder.append(comment); + if (definingType != null) { + builder.append(", definingType="); + builder.append(definingType.getPackageName()); + builder.append("."); + builder.append(definingType.getName()); + } else { + builder.append(", definingType= null"); + } + builder.append(", returnType="); + builder.append(returnType); + builder.append(", params="); + builder.append(params); + builder.append("]"); + return builder.toString(); + } + } + + private static final class GeneratedTypeImpl implements GeneratedType { + + private final Type parent; + private final String packageName; + private final String name; + private final List enumDefinitions; + private final List constantDefintions; + private final List methodDefinitions; + + public GeneratedTypeImpl(final Type parent, final String packageName, + final String name, final List enumBuilders, + final List constantBuilders, + final List methodBuilders) { + super(); + this.parent = parent; + this.packageName = packageName; + this.name = name; + + this.constantDefintions = toUnmodifiableConstants(constantBuilders); + this.enumDefinitions = toUnmodifiableEnums(enumBuilders); + this.methodDefinitions = toUnmodifiableMethods(methodBuilders); + } + + private List toUnmodifiableMethods( + List methodBuilders) { + final List methods = new ArrayList(); + for (final MethodSignatureBuilder methodBuilder : methodBuilders) { + methods.add(methodBuilder.toInstance(this)); + } + return Collections.unmodifiableList(methods); + } + + private List toUnmodifiableEnums( + List enumBuilders) { + final List enums = new ArrayList(); + for (final EnumBuilder enumBuilder : enumBuilders) { + enums.add(enumBuilder.toInstance(this)); + } + return Collections.unmodifiableList(enums); + } + + private List toUnmodifiableConstants( + List constantBuilders) { + final List constants = new ArrayList(); + for (final ConstantBuilder enumBuilder : constantBuilders) { + constants.add(enumBuilder.toInstance(this)); + } + return Collections.unmodifiableList(constants); + } + + @Override + public String getPackageName() { + return packageName; + } + + @Override + public String getName() { + return name; + } + + @Override + public Type getParentType() { + return parent; + } + + @Override + public List getEnumDefintions() { + return enumDefinitions; + } + + @Override + public List getConstantDefinitions() { + return constantDefintions; + } + + @Override + public List getMethodDefinitions() { + return methodDefinitions; + } + + @Override + public int hashCode() { + final int prime = 31; + int result = 1; + result = prime + * result + + ((constantDefintions == null) ? 0 : constantDefintions + .hashCode()); + result = prime + * result + + ((enumDefinitions == null) ? 0 : enumDefinitions + .hashCode()); + result = prime + * result + + ((methodDefinitions == null) ? 0 : methodDefinitions + .hashCode()); + result = prime * result + ((name == null) ? 0 : name.hashCode()); + result = prime * result + + ((packageName == null) ? 0 : packageName.hashCode()); + return result; + } + + @Override + public boolean equals(Object obj) { + if (this == obj) { + return true; + } + if (obj == null) { + return false; + } + if (getClass() != obj.getClass()) { + return false; + } + GeneratedTypeImpl other = (GeneratedTypeImpl) obj; + if (constantDefintions == null) { + if (other.constantDefintions != null) { + return false; + } + } else if (!constantDefintions.equals(other.constantDefintions)) { + return false; + } + if (enumDefinitions == null) { + if (other.enumDefinitions != null) { + return false; + } + } else if (!enumDefinitions.equals(other.enumDefinitions)) { + return false; + } + if (methodDefinitions == null) { + if (other.methodDefinitions != null) { + return false; + } + } else if (!methodDefinitions.equals(other.methodDefinitions)) { + return false; + } + if (name == null) { + if (other.name != null) { + return false; + } + } else if (!name.equals(other.name)) { + return false; + } + if (packageName == null) { + if (other.packageName != null) { + return false; + } + } else if (!packageName.equals(other.packageName)) { + return false; + } + return true; + } + + @Override + public String toString() { + StringBuilder builder = new StringBuilder(); + builder.append("GeneratedTypeImpl [parent="); + builder.append(parent.getName()); + builder.append(", packageName="); + builder.append(packageName); + builder.append(", name="); + builder.append(name); + builder.append(", enumDefinitions="); + builder.append(enumDefinitions); + builder.append(", constantDefintions="); + builder.append(constantDefintions); + builder.append(", methodDefinitions="); + builder.append(methodDefinitions); + builder.append("]"); + return builder.toString(); + } + } +}