/* * Copyright (c) 2016 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.mdsal.binding2.model.api.type.builder; import com.google.common.annotations.Beta; import org.opendaylight.mdsal.binding2.model.api.GeneratedProperty; import org.opendaylight.mdsal.binding2.model.api.Type; /** * Generated Property Builder is interface that contains methods to build and * instantiate Generated Property definition. * * @see GeneratedProperty */ @Beta public interface GeneratedPropertyBuilder extends TypeMemberBuilder { GeneratedPropertyBuilder setValue(String value); /** * Sets isReadOnly flag for property. If property is marked as read only it * is the same as set property in java as final. * * @param isReadOnly * Read Only property flag. */ GeneratedPropertyBuilder setReadOnly(final boolean isReadOnly); /** * Returns new immutable instance of Generated Property.
* The definingType param cannot be null. The * every member in Java MUST be declared and defined inside the scope of * class definition. In case that defining Type will be passed * as null reference the method SHOULD thrown * {@link IllegalArgumentException}. * * @param definingType * Defining Type of Generated Property * @return new immutable instance of Generated Property. */ GeneratedProperty toInstance(final Type definingType); }