Class ReportItemHandleImpl

All Implemented Interfaces:
IReportItemMethodContext, org.eclipse.birt.report.model.elements.interfaces.IDesignElementModel, org.eclipse.birt.report.model.elements.interfaces.IInternalReportItemModel, org.eclipse.birt.report.model.elements.interfaces.IStyledElementModel
Direct Known Subclasses:
ReportItemHandle

public abstract class ReportItemHandleImpl extends ReportElementHandle implements org.eclipse.birt.report.model.elements.interfaces.IInternalReportItemModel, org.eclipse.birt.report.model.elements.interfaces.IStyledElementModel, IReportItemMethodContext
Abstract implementation class for the report item handle
Since:
3.3
  • Field Details

    • DATABINDING_TYPE_NONE

      public static final int DATABINDING_TYPE_NONE
      Data binding type "none".
      See Also:
    • DATABINDING_TYPE_DATA

      public static final int DATABINDING_TYPE_DATA
      Data binding type "data", means the report item is binding to a data set or cube.
      See Also:
    • DATABINDING_TYPE_REPORT_ITEM_REF

      public static final int DATABINDING_TYPE_REPORT_ITEM_REF
      Data binding type "reportItemRef", means the report item is binding to another report item.
      See Also:
  • Constructor Details

    • ReportItemHandleImpl

      public ReportItemHandleImpl(org.eclipse.birt.report.model.core.Module module, org.eclipse.birt.report.model.core.DesignElement element)
      Constructor
      Parameters:
      module - module of the report item
      element - element of the report item
  • Method Details

    • getDataSet

      public DataSetHandle getDataSet()
      Returns the data set of the report item.
      Returns:
      the handle to the data set
    • setDataSet

      public void setDataSet(DataSetHandle handle) throws SemanticException
      Sets the data set of the report item.
      Parameters:
      handle - the handle of the data set
      Throws:
      SemanticException - if the property is locked.
    • getCube

      public CubeHandle getCube()
      Returns the cube of the report item.
      Returns:
      the handle to the cube
    • setCube

      public void setCube(CubeHandle handle) throws SemanticException
      Sets the cube of the report item.
      Parameters:
      handle - the handle of the cube
      Throws:
      SemanticException - if the property is locked.
    • getX

      public DimensionHandle getX()
      Gets a handle to deal with the item's x (horizontal) position.
      Returns:
      a DimensionHandle for the item's x position.
    • getY

      public DimensionHandle getY()
      Gets a handle to deal with the item's y (vertical) position.
      Returns:
      a DimensionHandle for the item's y position.
    • setX

      public void setX(String dimension) throws SemanticException
      Sets the item's x position using a dimension string with optional unit suffix such as "10" or "10pt". If no suffix is provided, then the units are assumed to be in the design's default units. Call this method to set a string typed in by the user.
      Parameters:
      dimension - dimension string with optional unit suffix.
      Throws:
      SemanticException - if the string is not valid
    • setX

      public void setX(double dimension) throws SemanticException
      Sets the item's x position to a value in default units. The default unit may be defined by the property in BIRT or the application unit defined in the design session.
      Parameters:
      dimension - the new value in application units.
      Throws:
      SemanticException - if the property is locked.
    • setY

      public void setY(String dimension) throws SemanticException
      Sets the item's y position using a dimension string with optional unit suffix such as "10" or "10pt". If no suffix is provided, then the units are assumed to be in the design's default units. Call this method to set a string typed in by the user.
      Parameters:
      dimension - dimension string with optional unit suffix.
      Throws:
      SemanticException - if the string is not valid
    • setY

      public void setY(double dimension) throws SemanticException
      Sets the item's y position to a value in default units. The default unit may be defined by the property in BIRT or the application unit defined in the design session.
      Parameters:
      dimension - the new value in application units.
      Throws:
      SemanticException - if the property is locked.
    • setHeight

      public void setHeight(String dimension) throws SemanticException
      Sets the item's height using a dimension string with optional unit suffix such as "10" or "10pt". If no suffix is provided, then the units are assumed to be in the design's default units. Call this method to set a string typed in by the user.
      Parameters:
      dimension - dimension string with optional unit suffix.
      Throws:
      SemanticException - if the string is not valid
    • setHeight

      public void setHeight(double dimension) throws SemanticException
      Sets the item's height to a value in default units. The default unit may be defined by the property in BIRT or the application unit defined in the design session.
      Parameters:
      dimension - the new value in application units.
      Throws:
      SemanticException - if the property is locked.
    • setWidth

      public void setWidth(String dimension) throws SemanticException
      Sets the item's width using a dimension string with optional unit suffix such as "10" or "10pt". If no suffix is provided, then the units are assumed to be in the design's default units. Call this method to set a string typed in by the user.
      Parameters:
      dimension - dimension string with optional unit suffix.
      Throws:
      SemanticException - if the string is not valid
    • setWidth

      public void setWidth(double dimension) throws SemanticException
      Sets the item's width to a value in default units. The default unit may be defined by the property in BIRT or the application unit defined in the design session.
      Parameters:
      dimension - the new value in application units.
      Throws:
      SemanticException - if the property is locked.
    • getWidth

      public DimensionHandle getWidth()
      Gets a handle to deal with the item's width.
      Returns:
      a DimensionHandle for the item's width.
    • getHeight

      public DimensionHandle getHeight()
      Gets a handle to deal with the item's height.
      Returns:
      a DimensionHandle for the item's height.
    • getBookmark

      public String getBookmark()
      Returns the bookmark of the report item.
      Returns:
      the book mark as a string
    • setBookmark

      public void setBookmark(String value) throws SemanticException
      Sets the bookmark of the report item.
      Parameters:
      value - the property value to be set.
      Throws:
      SemanticException - if the property is locked.
    • visibilityRulesIterator

      public Iterator visibilityRulesIterator()
      Returns visibility rules defined on the report item. The element in the iterator is the corresponding StructureHandle that deal with a Hide in the list.
      Returns:
      the iterator for visibility rules defined on this report item.
      See Also:
    • getOnCreate

      public String getOnCreate()
      Returns the script executed when the element is created in the Factory. Called after the item is created, but before the item is saved to the report document file.
      Returns:
      the script that executes
    • setOnCreate

      public void setOnCreate(String value) throws SemanticException
      Sets the script executed when the element is created in the Factory. Called after the item is created, but before the item is saved to the report document file.
      Parameters:
      value - the script to set
      Throws:
      SemanticException - if the property is locked.
    • getOnRender

      public String getOnRender()
      Returns the script executed when the element is prepared for rendering in the Presentation engine.
      Returns:
      the script that executes
    • setOnRender

      public void setOnRender(String value) throws SemanticException
      Sets the script executed when the element is prepared for rendering in the Presentation engine.
      Parameters:
      value - the script to set
      Throws:
      SemanticException - if the property is locked.
    • paramBindingsIterator

      public Iterator paramBindingsIterator()
      Returns the iterator for parameter binding list defined on this report item. The element in the iterator is the corresponding StructureHandle that deal with a ParamBinding in the list.
      Returns:
      the iterator for parameter binding handle list defined on this data set.
      See Also:
      • org.eclipse.birt.report.model.api.elements.structures.ParamBindingHandle
    • setTocExpression

      @Deprecated public void setTocExpression(String expression) throws SemanticException
      Deprecated.
      Sets a table of contents entry for this item. The TOC property defines an expression that returns a string that is to appear in the Table of Contents for this item or its container.
      Parameters:
      expression - the expression that returns a string
      Throws:
      SemanticException - if the TOC property is locked by the property mask.
      See Also:
    • getTocExpression

      @Deprecated public String getTocExpression()
      Deprecated.
      Returns the expression evalueated as a table of contents entry for this item.
      Returns:
      the expression evaluated as a table of contents entry for this item
      See Also:
    • getOnPrepare

      public String getOnPrepare()
      Gets the on-prepare script of the group. Startup phase. No data binding yet. The design of an element can be changed here.
      Returns:
      the on-prepare script of the group
    • setOnPrepare

      public void setOnPrepare(String script) throws SemanticException
      Sets the on-prepare script of the group element.
      Parameters:
      script - the script to set
      Throws:
      SemanticException - if the method is locked.
      See Also:
    • getOnPageBreak

      public String getOnPageBreak()
      Gets the on-pageBreak script of the report item. Presentation phase. It is for a script executed when the element is prepared for page breaking in the Presentation engine.
      Returns:
      the on-pageBreak script of the report item
    • setOnPageBreak

      public void setOnPageBreak(String script) throws SemanticException
      Sets the on-pageBreak script of the report item.
      Parameters:
      script - the script to set
      Throws:
      SemanticException - if the method is locked.
      See Also:
    • columnBindingsIterator

      public Iterator columnBindingsIterator()
      Returns the bound columns that binds the data set columns. The item in the iterator is the corresponding ComputedColumnHandle.
      Returns:
      a list containing the bound columns.
    • getColumnBindings

      public PropertyHandle getColumnBindings()
      Get a handle to deal with the bound column.
      Returns:
      a handle to deal with the bound data column.
    • getAvailableBindings

      public Iterator getAvailableBindings()
      Returns all the bindings which are available for this element. If the report item has no local data set, the bindings come from its container.
      Returns:
      each item is a ComputedColumnHandle instance.
    • addColumnBinding

      public ComputedColumnHandle addColumnBinding(ComputedColumn addColumn, boolean inForce) throws SemanticException
      Adds a bound column to the list.
      Parameters:
      addColumn - the bound column to add
      inForce - true the column is added to the list regardless of duplicate expression. false do not add the column if the expression already exist
      Returns:
      the newly created ComputedColumnHandle or the existed ComputedColumnHandle in the list
      Throws:
      SemanticException - if expression is not duplicate but the name duplicates the exsiting bound column. Or, if the both name/expression are duplicate, but inForce is true.
    • findColumnBinding

      public ComputedColumnHandle findColumnBinding(String name)
      Finds a column binding with the given name.
      Parameters:
      name - name of the binding to find
      Returns:
      column binding with the given name if found, otherwise null
    • removedUnusedColumnBindings

      public void removedUnusedColumnBindings() throws SemanticException
      Removes unused bound columns from the element. Bound columns of nested elements will not be removed. For example, if calls this method for a list thaat contains a text-data, unused bound columns on list are removed. While, unused columns on text-data still are kept.
      Throws:
      SemanticException - if bound column property is locked.
    • getTOC

      public TOCHandle getTOC()
      Gets TOC handle.
      Returns:
      toc handle
    • addTOC

      public TOCHandle addTOC(String expression) throws SemanticException
      Adds toc structure.
      Parameters:
      expression - toc expression
      Returns:
      toc handle
      Throws:
      SemanticException
    • addTOC

      public TOCHandle addTOC(TOC toc) throws SemanticException
      Adds toc structure.
      Parameters:
      toc - toc structure
      Returns:
      toc handle
      Throws:
      SemanticException
    • getZIndex

      public int getZIndex()
      Gets the item's z position as an integer.
      Returns:
      the z depth. Start from 0
    • setZIndex

      public void setZIndex(int zIndex) throws SemanticException
      Sets the item's z position to an integer.
      Parameters:
      zIndex - the z depth. Start from 0
      Throws:
      SemanticException - if the property is locked.
    • getMethods

      public List<ReportItemHandle> getMethods(String methodName)
      Returns functions that can be called in the given method.
      Parameters:
      methodName - the method name in string
      Returns:
      a list containing IMethodInfo for functions
    • setDataBindingReference

      public void setDataBindingReference(ReportItemHandle item) throws SemanticException
      Sets the report item of which data binding are referred by.
      Parameters:
      item - the report item
      Throws:
      SemanticException - if the element reference makes a circle
    • getDataBindingReferenceName

      public String getDataBindingReferenceName()
      Returns the name of the report item of which data binding are referred by.
      Returns:
      the report item name
    • getDataBindingReference

      public ReportItemHandle getDataBindingReference()
      Returns the report item of which data binding are referred by.
      Returns:
      the report item
    • getDataBindingType

      public int getDataBindingType()
      Returns the data binding type of this report item. The return value should be one of following:
      • DATABINDING_TYPE_NONE, no data binding.
      • DATABINDING_TYPE_DATA, data binding to data set or cube.
      • DATABINDING_TYPE_REPORT_ITEM_REF, data binding to another report item.
      Returns:
      the data binding type of this report item
    • getAvailableDataBindingReferenceList

      public List<ReportItemHandle> getAvailableDataBindingReferenceList()
      Returns report items that can be referred by other report items by data binding reference property.

      Two kinds of report items can be referred:

      • The report item has dataset or cube property defined. That is, data set or cube property is set locally and databinding ref property is null.
      • The report item has data binding reference to other report items.
      ReportItem in the design are all applicable. Each entry of the return list is of ReportItemHandle type.
      Returns:
      returns report items that has dataset or cube property defined
    • getNamedDataBindingReferenceList

      public List<ReportItemHandle> getNamedDataBindingReferenceList()
      Returns report items that can be referred by other report items by data binding reference property. Report items in the return list have non-null names.

      Two kinds of report items can be referred:

      • The report item has dataset or cube property defined. That is, data set or cube property is set locally and databinding ref property is null.
      • The report item has data binding reference to other report items.
      ReportItem in the design are all applicable. Each entry of the return list is of ReportItemHandle type.
      Returns:
      returns report items that has dataset or cube property defined
    • getAvailableDataSetBindingReferenceList

      public List<ReportItemHandle> getAvailableDataSetBindingReferenceList()
      Returns report items that can be referred by other report items by data binding reference property.

      Two kinds of report items can be referred:

      • The report item has dataset property defined. That is, data set property is set locally and databinding ref property is null.
      • The report item has data binding reference to other report items.
      ReportItem in the design are all applicable. Each entry of the return list is of ReportItemHandle type.
      Returns:
      returns report items that has dataset property defined
    • getNamedDataSetBindingReferenceList

      public List<ReportItemHandle> getNamedDataSetBindingReferenceList()
      Returns report items that can be referred by other report items by data binding reference property. Report items in the return list have non-null names.

      Two kinds of report items can be referred:

      • The report item has dataset property defined. That is, data set property is set locally and databinding ref property is null.
      • The report item has data binding reference to other report items.
      ReportItem in the design are all applicable. Each entry of the return list is of ReportItemHandle type.
      Returns:
      returns report items that has dataset property defined
    • getAvailableCubeBindingReferenceList

      public List<ReportItemHandle> getAvailableCubeBindingReferenceList()
      Returns report items that can be referred by other report items by data binding reference property.

      Two kinds of report items can be referred:

      • The report item has cube property defined. That is, cube property is set locally and databinding ref property is null.
      • The report item has data binding reference to other report items.
      ReportItem in the design are all applicable. Each entry of the return list is of ReportItemHandle type.
      Returns:
      returns report items that has cube property defined
    • getNamedCubeBindingReferenceList

      public List<ReportItemHandle> getNamedCubeBindingReferenceList()
      Returns report items that can be referred by other report items by data binding reference property. Report items in the return list have non-null names.

      Two kinds of report items can be referred:

      • The report item has cube property defined. That is, cube property is set locally and databinding ref property is null.
      • The report item has data binding reference to other report items.
      ReportItem in the design are all applicable. Each entry of the return list is of ReportItemHandle type.
      Returns:
      returns report items that has cube property defined
    • getAvailableDataBindingReferenceList

      protected List<ReportItemHandle> getAvailableDataBindingReferenceList(String propName)
      Returns all available data binding referred report items, regardless of namelessness.
      Parameters:
      propName - the property name. Can be resultSet, cube or null .
      Returns:
      a list containing report item
    • removedColumnBindings

      public void removedColumnBindings(List<String> bindingNameList) throws SemanticException
      Removes bound columns from the element.
      Parameters:
      bindingNameList - the binding name list to be removed, each entry should be instance of java.lang.String.
      Throws:
      SemanticException - if bound column property is locked.
    • removedColumnBinding

      public void removedColumnBinding(String bindingName) throws SemanticException
      Removes bound column from the element.
      Parameters:
      bindingName - the binding name to be removed
      Throws:
      SemanticException - if bound column property is locked.
    • getCurrentView

      public DesignElementHandle getCurrentView()
      Returns the view that is being used.
      Returns:
      the view that is being used
    • addView

      public void addView(DesignElementHandle viewElement) throws SemanticException
      Adds a new element as the view.
      Parameters:
      viewElement - the element
      Throws:
      SemanticException
    • dropView

      public void dropView(DesignElementHandle viewElement) throws SemanticException
      Deletes the given view.
      Parameters:
      viewElement - the element
      Throws:
      SemanticException
    • setCurrentView

      public void setCurrentView(DesignElementHandle viewElement) throws SemanticException
      Sets the view to be used. If the given element is not in the multiple view, it will be added and set as the active view.
      Parameters:
      viewElement - the view element, must not be this. Can be null.
      Throws:
      SemanticException - if the given element resides in the other elements.
    • getViews

      public List getViews()
      Returns a list containing view elements.
      Returns:
      a list. Each item is DesignElementHandle.
    • canAddView

      public boolean canAddView(String extensionType)
      Determines whether this report item can add a view with the specified extension type or not.
      Parameters:
      extensionType - extension type
      Returns:
      Return the verified option to add the view
    • getACLExpression

      public String getACLExpression()
      Returns the ACL expression associated with the report element instance.
      Returns:
      the expression in string
    • setACLExpression

      public void setACLExpression(String expr) throws SemanticException
      Sets the ACL expression associated with the report element instance.
      Parameters:
      expr - the expression in string
      Throws:
      SemanticException - if the property is locked by masks
    • cascadeACL

      public boolean cascadeACL()
      Returns true (the default), a report element's ACL is automatically propagated to all its directly contained child elements and are added to their ACLs. Otherwise false.
      Returns:
      the flag to control whether to cascade ACL
    • setCascadeACL

      public void setCascadeACL(boolean cascadeACL) throws SemanticException
      Sets the flag to control whether to cascade ACL
      Parameters:
      cascadeACL - true (the default), a report element's ACL is automatically propagated to all its directly contained child elements and are added to their ACLs. Otherwise false.
      Throws:
      SemanticException - if the property is locked by masks
    • canCascadeACL

      public boolean canCascadeACL()
      Determines whether this report item can cascade ACL or not. True if and only if this item has define IInternalReportItemModel.CASCADE_ACL_PROP property and it is a container.
      Returns:
      true if this item has define IInternalReportItemModel.CASCADE_ACL_PROP property and it is a container, otherwise false
    • allowExport

      public boolean allowExport()
      Gets the allowExport property of the report item.
      Returns:
      a boolean value which indicates if can be exported or not.
    • setAllowExport

      public void setAllowExport(boolean allowExport) throws SemanticException
      Sets the allowExport property of the report item.
      Parameters:
      allowExport - indicates whether can be exported or not.
      Throws:
      SemanticException
    • getViewHost

      public ReportItemHandle getViewHost()
      Gets the host element of this view.
      Returns:
      the host element of this view
    • getBookmarkDisplayName

      public String getBookmarkDisplayName()
      Gets the display name of the bookmark.
      Returns:
      the display name of the bookmark.
    • setBookmarkDisplayName

      public void setBookmarkDisplayName(String bookmarkDisplayName) throws SemanticException
      Sets the display name of the bookmark.
      Parameters:
      bookmarkDisplayName - the display name of the bookmark to set
      Throws:
      SemanticException
    • pushDown

      public boolean pushDown()
      Indicate if the query will be pushed down to the database. Default value is false.
      Returns:
      if the query will be pushed down to the database, otherwise return .
    • setPushDown

      public void setPushDown(boolean pushDown) throws SemanticException
      Sets the pushdown property value of the report item. Property pushDown indicates if the query will be pushed down to the database.
      Parameters:
      pushDown - true if the query will be pushed down to the database, otherwise false.
      Throws:
      SemanticException
    • getProperty

      public Object getProperty(String propName)
      Description copied from class: DesignElementHandle
      Returns the value of a property as a generic object. The value is the internal property value, it is not localized. For a property with the element reference type, the reference element name is returned.
      Overrides:
      getProperty in class DesignElementHandle
      Parameters:
      propName - the name of the property of interest
      Returns:
      the value of the property. The type of the returned object depends on the property type.
      See Also:
    • setThemeName

      public void setThemeName(String themeName) throws SemanticException
      Set the theme name
      Parameters:
      themeName - theme name
      Throws:
      SemanticException - throw semantic exception
    • setTheme

      public void setTheme(ReportItemThemeHandle theme) throws SemanticException
      Set the theme
      Parameters:
      theme - theme object
      Throws:
      SemanticException - throw semantic exception
    • getTheme

      public final ReportItemThemeHandle getTheme()
      Returns the refresh rate when viewing the report.
      Returns:
      the refresh rate
    • getTagType

      public String getTagType()
      Returns the tag type of this label item.
      Returns:
      the tag type value
    • setTagType

      public void setTagType(String tagType) throws SemanticException
      Sets the tag type of this label item.
      Parameters:
      tagType - the tag type
      Throws:
      SemanticException - if the property is locked.
    • getLanguage

      public String getLanguage()
      Returns the language of this label item.
      Returns:
      the language
    • setLanguage

      public void setLanguage(String language) throws SemanticException
      Sets the language of this label item.
      Parameters:
      language - the language
      Throws:
      SemanticException - if the property is locked.
    • getAltTextExpression

      public ExpressionHandle getAltTextExpression()
      Returns the alternate text of this label item.
      Returns:
      the alternate text expression.
    • setAltTextExpression

      public void setAltTextExpression(Expression altText) throws SemanticException
      Sets the alternate text of this label item.
      Parameters:
      altText - the alternate text expression.
      Throws:
      SemanticException - if the property is locked.
    • getOrder

      public int getOrder()
      Returns the order of this label item.
      Returns:
      the order
    • setOrder

      public void setOrder(int order) throws SemanticException
      Sets the order of this label item.
      Parameters:
      order - order number
      Throws:
      SemanticException - if the property is locked.
    • getURL

      public String getURL()
      Returns the url of this label item.
      Returns:
      the url
    • setURL

      public void setURL(String url) throws SemanticException
      Sets the url of this label item.
      Parameters:
      url - the url
      Throws:
      SemanticException - if the property is locked.
    • getAltTextKey

      public String getAltTextKey()
      Returns the resource key of the alternate text of this image.
      Returns:
      the resource key of the alternate text
    • setAltTextKey

      public void setAltTextKey(String altTextKey) throws SemanticException
      Sets the resource key of the alternate text of this image.
      Parameters:
      altTextKey - the alternate text key
      Throws:
      SemanticException