2 * Copyright (c) 2018 Pantheon Technologies, s.r.o. 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.mdsal.binding.yang.types;
10 import com.google.common.annotations.Beta;
11 import com.google.common.collect.ImmutableMap;
13 import org.opendaylight.mdsal.binding.model.api.type.builder.EnumBuilder;
14 import org.opendaylight.mdsal.binding.model.api.type.builder.GeneratedTOBuilder;
15 import org.opendaylight.mdsal.binding.model.api.type.builder.GeneratedTypeBuilderBase;
16 import org.opendaylight.mdsal.binding.model.util.generated.type.builder.RuntimeGeneratedTOBuilder;
17 import org.opendaylight.yangtools.yang.model.api.SchemaContext;
18 import org.opendaylight.yangtools.yang.model.api.TypeDefinition;
19 import org.opendaylight.yangtools.yang.model.api.type.EnumTypeDefinition;
22 * {@link AbstractTypeProvider} which generates enough type information for runtime support. For a codegen-compatible
23 * provider use {@link CodegenTypeProvider}.
26 public final class RuntimeTypeProvider extends AbstractTypeProvider {
27 public RuntimeTypeProvider(final SchemaContext schemaContext) {
32 public void addEnumDescription(final EnumBuilder enumBuilder, final EnumTypeDefinition enumTypeDef) {
37 void addCodegenInformation(final GeneratedTypeBuilderBase<?> genTOBuilder, final TypeDefinition<?> typeDef) {
42 Map<String, String> resolveRegExpressionsFromTypedef(final TypeDefinition<?> typedef) {
43 return ImmutableMap.of();
47 public GeneratedTOBuilder newGeneratedTOBuilder(final String packageName, final String name) {
48 return new RuntimeGeneratedTOBuilder(packageName, name);