2 * Copyright (c) 2013 Cisco Systems, Inc. and others. All rights reserved.
4 * This program and the accompanying materials are made available under the
5 * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6 * and is available at http://www.eclipse.org/legal/epl-v10.html
8 package org.opendaylight.controller.binding.generator.util.generated.type.builder;
10 import org.opendaylight.controller.sal.binding.model.api.Constant;
11 import org.opendaylight.controller.sal.binding.model.api.GeneratedType;
12 import org.opendaylight.controller.sal.binding.model.api.Type;
13 import org.opendaylight.controller.sal.binding.model.api.type.builder.*;
15 import java.util.List;
17 public final class GeneratedTypeBuilderImpl extends AbstractGeneratedTypeBuilder {
19 public GeneratedTypeBuilderImpl(String packageName, String name) {
20 super(packageName, name);
25 public GeneratedType toInstance() {
26 return new GeneratedTypeImpl(null, getPackageName(), getName(), getComment(), getAnnotations(), isAbstract(),
27 getImplementsTypes(), getEnclosedTypes(), getEnclosedTransferObjects(), getEnumerations(),
28 getConstants(), getMethodDefinitions());
32 public String toString() {
33 StringBuilder builder = new StringBuilder();
34 builder.append("GeneratedTransferObject [packageName=");
35 builder.append(getPackageName());
36 builder.append(", name=");
37 builder.append(getName());
38 builder.append(", comment=");
39 builder.append(", annotations=");
40 builder.append(getAnnotations());
41 builder.append(getComment());
42 builder.append(", implements=");
43 builder.append(getImplementsTypes());
44 builder.append(", enclosedTypes=");
45 builder.append(getEnclosedTypes());
46 builder.append(", constants=");
47 builder.append(getConstants());
48 builder.append(", enumerations=");
49 builder.append(getEnumerations());
50 builder.append(", properties=");
51 builder.append(", methods=");
52 builder.append(getMethodDefinitions());
54 return builder.toString();
57 private static final class GeneratedTypeImpl extends AbstractGeneratedType {
59 public GeneratedTypeImpl(final Type parent, final String packageName, final String name, final String comment,
60 final List<AnnotationTypeBuilder> annotationBuilders, final boolean isAbstract,
61 final List<Type> implementsTypes,
62 final List<GeneratedTypeBuilder> enclosedGenTypeBuilders,
63 final List<GeneratedTOBuilder> enclosedGenTOBuilders,
64 final List<EnumBuilder> enumBuilders, final List<Constant> constants,
65 final List<MethodSignatureBuilder> methodBuilders) {
66 super(parent, packageName, name, comment, annotationBuilders, isAbstract, implementsTypes,
67 enclosedGenTypeBuilders, enclosedGenTOBuilders, enumBuilders, constants, methodBuilders);