2 * Copyright (c) 2016 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
9 package org.opendaylight.mdsal.binding2.java.api.generator.renderers;
11 import java.util.HashMap;
13 import org.opendaylight.mdsal.binding2.model.api.GeneratedTransferObject;
14 import org.opendaylight.mdsal.binding2.model.api.MethodSignature;
15 import org.opendaylight.mdsal.binding2.txt.unionBuilderTemplate;
17 public class UnionBuilderRenderer extends ClassRenderer {
19 * list of all imported names for template
21 private final Map<String, String> importedNames = new HashMap<>();
22 private final Map<String, String> generatedParameters = new HashMap<>();
24 public UnionBuilderRenderer(final GeneratedTransferObject type) {
28 protected String body() {
29 importedNames.put("unsupportedOperationException", importedName(UnsupportedOperationException.class));
30 for (MethodSignature methodSignature : genTO.getMethodDefinitions()) {
31 importedNames.put(methodSignature.getName(), importedName(methodSignature.getReturnType()));
32 generatedParameters.put(methodSignature.getName(), generateParameters(methodSignature.getParameters()));
34 return unionBuilderTemplate.render(genTO, getType().getName(), importedNames, generatedParameters).body();