import com.google.common.annotations.Beta;
import java.util.List;
+import java.util.Optional;
+import org.eclipse.jdt.annotation.NonNull;
import org.opendaylight.mdsal.binding.javav2.generator.context.ModuleContext;
import org.opendaylight.mdsal.binding.javav2.model.api.Constant;
import org.opendaylight.mdsal.binding.javav2.model.api.Type;
+import org.opendaylight.mdsal.binding.javav2.model.api.TypeComment;
+import org.opendaylight.mdsal.binding.javav2.model.api.YangSourceDefinition;
import org.opendaylight.yangtools.yang.common.QName;
@Beta
* @param comment
* Comment String.
*/
- T addComment(String comment);
+ T addComment(TypeComment comment);
/**
* The method creates new AnnotationTypeBuilder containing specified package
List<GeneratedPropertyBuilder> getProperties();
+ /**
+ * Returns the YANG definition of this type, if available.
+ *
+ * @return YANG source definition, or empty when unavailable.
+ */
+ Optional<YangSourceDefinition> getYangSourceDefinition();
+
/**
* Add new Generated Property definition for Generated Transfer Object
* Builder and returns Generated Property Builder for specifying Property. <br>
*/
void setReference(String reference);
+ /**
+ * Set the YANG source definition.
+ *
+ * @param definition YANG source definition, must not be null
+ */
+ void setYangSourceDefinition(@NonNull YangSourceDefinition definition);
}