X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fsal%2Fyang-prototype%2Fsal%2Fsal-binding-spi%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fsal%2Fbinding%2Fspi%2FMapper.java;fp=opendaylight%2Fsal%2Fyang-prototype%2Fsal%2Fsal-binding-spi%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fsal%2Fbinding%2Fspi%2FMapper.java;h=701e72c9dc64e2a5e806531efe4343da3c7980d2;hb=ca85a6f3a39b406ab122fe985ee010a41489f658;hp=0000000000000000000000000000000000000000;hpb=ed39d9e127dcea25cdd05e4f228a6d7b8b08fad5;p=controller.git diff --git a/opendaylight/sal/yang-prototype/sal/sal-binding-spi/src/main/java/org/opendaylight/controller/sal/binding/spi/Mapper.java b/opendaylight/sal/yang-prototype/sal/sal-binding-spi/src/main/java/org/opendaylight/controller/sal/binding/spi/Mapper.java new file mode 100644 index 0000000000..701e72c9dc --- /dev/null +++ b/opendaylight/sal/yang-prototype/sal/sal-binding-spi/src/main/java/org/opendaylight/controller/sal/binding/spi/Mapper.java @@ -0,0 +1,35 @@ +/* + * 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.spi; + +import org.opendaylight.controller.yang.binding.DataObject; +import org.opendaylight.controller.yang.common.QName; +import org.opendaylight.controller.yang.data.api.CompositeNode; +/** + * Translator between Binding-Independent format and generated Binding Data Objects + * + * + * + * + * @param Result Type + */ +public interface Mapper { + + QName getQName(); + Class getDataObjectClass(); + T objectFromDom(CompositeNode object); + + /** + * + * @param obj + * @return + * @throws IllegalArgumentException + */ + CompositeNode domFromObject(DataObject obj) throws IllegalArgumentException; + +}