Package org.eclipse.birt.report.model.api.elements.structures

# Class PropertyBinding

java.lang.Object
org.eclipse.birt.report.model.core.Structure
org.eclipse.birt.report.model.api.elements.structures.PropertyBinding

All Implemented Interfaces:
  `Cloneable`, `IStructure`, `org.eclipse.birt.report.model.core.IPropertySet`

public class PropertyBinding extends org.eclipse.birt.report.model.core.Structure
Represents the property binding structure. The property binding defines the overridable property value. It includes property name, element ID and overridden value.

## Field Summary

Fields
Modifier and Type
Field
Description
`protected String`
`encryptionID`
The encryption id for the encrypted property value.
`protected BigDecimal`
`id`
Element id of the property binding.
`static final String`
`ID_MEMBER`
Name of the "id" property.
`protected String`
`name`
Name of the property binding.
`static final String`
`NAME_MEMBER`
Name of the "name" property.
`static final String`
`PROPERTY_BINDING_STRUCT`
Name of the structure.
`protected Expression`
`value`
Value expression of this property binding.
`static final String`
`VALUE_MEMBER`
Name of the "value" property.

## Constructor Summary

Constructors
Constructor
Description
`PropertyBinding()`
Constructs a PropertyMask.

## Method Summary

Modifier and Type
Method
Description
`boolean`
`equals(Object obj)`
`String`
`getEncryption()`
Returns the encryption id.
`BigDecimal`
`getID()`
Gets the element id of the binding.
`protected Object`
`getIntrinsicProperty(String propName)`
Returns the value of a structure property represented as a member variable.
`String`
`getName()`
Gets the property name of this binding.
`String`
`getStructName()`
Returns the name of the structure definition.
`String`
`getValue()`
Gets the overridden value of this binding.
`protected StructureHandle`
`handle(SimpleValueHandle valueHandle, int index)`
Creates the specific handle of this structure.
`void`
`setEncryption(String encryptionID)`
Sets the encryption id for the encrypted value.
`void`
`setID(long id)`
Sets the element id of this binding.
`protected void`
`setIntrinsicProperty(String propName, Object value)`
Sets the value of of a structure property represented as a member variable.
`void`
`setName(String name)`
Sets the name of the property binding.
`void`
`setValue(String expression)`
Sets the overridden value of this binding.
`List<SemanticException>`
`validate(org.eclipse.birt.report.model.core.Module module, org.eclipse.birt.report.model.core.DesignElement element)`
Validate whether this structure is valid.

### Methods inherited from class org.eclipse.birt.report.model.core.Structure

`checkStringMember, copy, getCompatibleValue, getContext, getDefn, getElement, getExpressionProperty, getHandle, getHandle, getLocalProperty, getLocalProperty, getMemberDefn, getObjectDefn, getProperty, getProperty, getReferencableProperty, getStringProperty, isDesignTime, isReferencable, setContext, setExpressionProperty, setProperty, setProperty, setupContext, updateReference`

### Methods inherited from class java.lang.Object

`clone, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Field Details

### PROPERTY_BINDING_STRUCT

public static final String PROPERTY_BINDING_STRUCT
Name of the structure.

See Also:
  - Constant Field Values

### NAME_MEMBER

public static final String NAME_MEMBER
Name of the "name" property.

See Also:
  - Constant Field Values

### ID_MEMBER

public static final String ID_MEMBER
Name of the "id" property.

See Also:
  - Constant Field Values

### VALUE_MEMBER

public static final String VALUE_MEMBER
Name of the "value" property.

See Also:
  - Constant Field Values

### name

protected String name
Name of the property binding.

### id

protected BigDecimal id
Element id of the property binding. Then Call `ModuleHandleImpl.getElementByID(long)` to find the host element of this property binding defined.

### value

protected Expression value
Value expression of this property binding.

### encryptionID

protected String encryptionID
The encryption id for the encrypted property value.

## Constructor Details

### PropertyBinding

public PropertyBinding()
Constructs a PropertyMask.

## Method Details

### getIntrinsicProperty

protected Object getIntrinsicProperty(String propName)
Description copied from class: `org.eclipse.birt.report.model.core.Structure`
Returns the value of a structure property represented as a member variable.

Specified by:
  `getIntrinsicProperty` in class `org.eclipse.birt.report.model.core.Structure`
Parameters:
  `propName` - name of the property
Returns:
  the value of the property, or null if the property is not set

### setIntrinsicProperty

protected void setIntrinsicProperty(String propName, Object value)
Description copied from class: `org.eclipse.birt.report.model.core.Structure`
Sets the value of of a structure property represented as a member variable.

Specified by:
  `setIntrinsicProperty` in class `org.eclipse.birt.report.model.core.Structure`
Parameters:
  `propName` - the name of the property to set
  `value` - the property value

### handle

protected StructureHandle handle(SimpleValueHandle valueHandle, int index)
Description copied from class: `org.eclipse.birt.report.model.core.Structure`
Creates the specific handle of this structure. This handle is always created.

Specified by:
  `handle` in class `org.eclipse.birt.report.model.core.Structure`
Parameters:
  `valueHandle` - the value handle of this structure list property this structure is in
  `index` - the position of this structure in structure list
Returns:
  the handle of this structure.

### getStructName

public String getStructName()
Description copied from interface: `IStructure`
Returns the name of the structure definition. The name is the one used to define the structure in the meta-data dictionary.

Returns:
  the internal name of the structure a defined in the meta-data dictionary.

### setName

public void setName(String name)
Sets the name of the property binding. It must be one of the defined property in the element.

Parameters:
  `name` - the property name

### getName

public String getName()
Gets the property name of this binding.

Returns:
  the property name of this binding

### setID

public void setID(long id)
Sets the element id of this binding.

Parameters:
  `id` - the element id to set

### getID

public BigDecimal getID()
Gets the element id of the binding.

Returns:
  the element id of this binding

### getValue

public String getValue()
Gets the overridden value of this binding.

Returns:
  the overridden value of this binding.

### setValue

public void setValue(String expression)
Sets the overridden value of this binding.

Parameters:
  `expression` - the value expression to set

### validate

public List<SemanticException> validate(org.eclipse.birt.report.model.core.Module module, org.eclipse.birt.report.model.core.DesignElement element)
Description copied from class: `org.eclipse.birt.report.model.core.Structure`
Validate whether this structure is valid. The derived class should override this method if semantic check is needed. The each error is the instance of `PropertyValueException`.

Overrides:
  `validate` in class `org.eclipse.birt.report.model.core.Structure`
Parameters:
  `module` - the module
  `element` - the element contains this structure
Returns:
  the semantic error list

### setEncryption

public void setEncryption(String encryptionID)
Sets the encryption id for the encrypted value. This method is not recommended to be called by users. It is just called by Model inner APIs. Otherwise, if user sets a wrong id inconsistent with the value, they might get an odd value.

Parameters:
  `encryptionID` -

### getEncryption

public String getEncryption()
Returns the encryption id.

Returns:
  the encryption id.

### equals

public boolean equals(Object obj)

Overrides:
  `equals` in class `org.eclipse.birt.report.model.core.Structure`