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