Class LibraryHandle
- java.lang.Object
-
- org.eclipse.birt.report.model.api.DesignElementHandle
-
- org.eclipse.birt.report.model.api.ModuleHandleImpl
-
- org.eclipse.birt.report.model.api.ModuleHandle
-
- org.eclipse.birt.report.model.api.LibraryHandleImpl
-
- org.eclipse.birt.report.model.api.LibraryHandle
-
- All Implemented Interfaces:
IModuleModel,org.eclipse.birt.report.model.elements.interfaces.IDesignElementModel,org.eclipse.birt.report.model.elements.interfaces.IInternalLibraryModel,org.eclipse.birt.report.model.elements.interfaces.ILibraryModel
public class LibraryHandle extends LibraryHandleImpl implements org.eclipse.birt.report.model.elements.interfaces.ILibraryModel
Represents the handle of library element. The library contains the resuable element components.Content Item Description Code Modules Global scripts that apply to the report as a whole. Parameters A list of Parameter elements that describe the data that the user can enter when running the report. Data Sources The connections used by the report. Data Sets Data sets defined in the design. Color Palette A set of custom color names as part of the design. Styles User-defined styles used to format elements in the report. Each style must have a unique name within the set of styles for this report. Page Setup The layout of the master pages within the report. Components Reusable report items defined in this design. Report items can extend these items. Defines a "private library" for this design. Translations The list of externalized messages specifically for this report. Images A list of images embedded in this report. There are two cases that this library handle represents:
- the library file that user opens directly
In this case, user can take operations as same as design file. - the library file that is included in one design file
User can not take operations, because the included library file is read-only. Any operation on the library file of this type will throw runtime exception.
-
-
Field Summary
-
Fields inherited from class org.eclipse.birt.report.model.api.ModuleHandleImpl
isInitialized
-
Fields inherited from class org.eclipse.birt.report.model.api.DesignElementHandle
module
-
Fields inherited from interface org.eclipse.birt.report.model.elements.interfaces.IDesignElementModel
COMMENTS_PROP, CUSTOM_XML_PROP, DISPLAY_NAME_ID_PROP, DISPLAY_NAME_PROP, EVENT_HANDLER_CLASS_PROP, EXTENDS_PROP, FULL_LABEL, ID_SUFFIX, NAME_PROP, NEW_HANDLER_ON_EACH_EVENT_PROP, NO_SLOT, PROPERTY_MASKS_PROP, REF_TEMPLATE_PARAMETER_PROP, SHORT_LABEL, USER_LABEL, USER_PROPERTIES_PROP, VIEW_ACTION_PROP
-
Fields inherited from interface org.eclipse.birt.report.model.elements.interfaces.IInternalLibraryModel
CUBE_SLOT, SLOT_COUNT, THEMES_SLOT
-
Fields inherited from interface org.eclipse.birt.report.model.api.core.IModuleModel
AUTHOR_PROP, BASE_PROP, COLOR_PALETTE_PROP, COMPONENT_SLOT, CONFIG_VARS_PROP, CREATED_BY_PROP, DATA_SET_SLOT, DATA_SOURCE_SLOT, DESCRIPTION_ID_PROP, DESCRIPTION_PROP, HELP_GUIDE_PROP, IMAGES_PROP, INCLUDE_RESOURCE_PROP, INCLUDE_SCRIPTS_PROP, INITIALIZE_METHOD, LIBRARIES_PROP, PAGE_SLOT, PARAMETER_SLOT, PROPERTY_BINDINGS_PROP, SCRIPTLIBS_PROP, SUBJECT_PROP, THEME_PROP, TITLE_ID_PROP, TITLE_PROP, UNITS_PROP
-
-
Constructor Summary
Constructors Constructor Description LibraryHandle(org.eclipse.birt.report.model.elements.Library library)Constructs one library handle with the given library element.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddConfigVariable(ConfigVariable configVar)Adds a new config variable.voidaddImage(EmbeddedImage image)Adds a new embedded image.voidaddTranslation(java.lang.String resourceKey, java.lang.String locale, java.lang.String text)Adds a new translation to the design.voiddropConfigVariable(java.lang.String name)Drops a config variable.voiddropImage(java.lang.String name)Drops an embedded image from the design.voiddropImage(java.util.List images)Drops an embedded image handle list from the design.voiddropLibrary(LibraryHandle library)Drops the given library from the included libraries of this design file.voiddropLibraryAndBreakExtends(LibraryHandle library)Drops the given library from the design and break all the parent/child relationships.voiddropTranslation(java.lang.String resourceKey, java.lang.String locale)Drops a translation from the design.java.util.ListgetAllPages()Returns all page handles that this modules and the included modules contain.java.util.ListgetAllStyles()Returns all style element handles that this modules and the included modules contain.SlotHandlegetComponents()Returns a slot handle to work with the top-level components within the report.SlotHandlegetDataSets()Returns a slot handle to work with the data sets within the report.SlotHandlegetDataSources()Returns a slot handle to work with the data sources within the report.java.util.ListgetFlattenParameters()Returns the flatten Parameters/ParameterGroups of the design.SlotHandlegetMasterPages()Returns a slot handle to work with the master pages within the report.SlotHandlegetParameters()Returns a slot handle to work with the top-level parameters and parameter groups within the report.java.util.ListgetParametersAndParameterGroups()Returns parameters and parameter groups on the module.java.util.List<ReportItemThemeHandle>getVisibleReportItemThemes(int level, java.lang.String type)Returns report item theme handles according the input level.java.util.ListgetVisibleThemes(int level)Returns theme handles according the input level.java.util.IteratorimagesIterator()Returns the iterator over all embedded images of this module instance.java.util.IteratorincludeLibrariesIterator()Returns the iterator over all included libraries.voidincludeLibrary(java.lang.String libraryFileName, java.lang.String namespace)Includes one library with the given library file name.CssStyleSheetHandleopenCssStyleSheet(java.io.InputStream is)Gets the result style sheet with given file name of an external CSS2 resource.CssStyleSheetHandleopenCssStyleSheet(java.lang.String fileName)Gets the result style sheet with given file name of an external CSS2 resource.voidreloadLibraries()Reloads all libraries this module included.voidreloadLibrary(java.lang.String reloadPath)Reloads the library with the given library file path.voidreloadLibrary(LibraryHandle libraryToReload)Reloads the library with the given library file path.voidreplaceConfigVariable(ConfigVariable oldVar, ConfigVariable newVar)Replaces the old config variable with the new one.voidreplaceImage(EmbeddedImage oldVar, EmbeddedImage newVar)Replaces the old embedded image with the new one.voidsetTheme(ThemeHandle theme)Sets the theme to a report.voidsetThemeName(java.lang.String themeName)Sets the theme to a report.voidshiftLibrary(LibraryHandle library, int toPosn)Shifts the library to new position.-
Methods inherited from class org.eclipse.birt.report.model.api.LibraryHandleImpl
getCubes, getHostHandle, getNamespace, getRelativeFileName, getStyles, getThemes, importCssStyles, importCssStyles, isDirectionRTL
-
Methods inherited from class org.eclipse.birt.report.model.api.ModuleHandleImpl
addAttributeListener, addDisposeListener, addIncludeScript, addResourceChangeListener, addScriptLib, addValidationListener, checkReport, checkReportIfNecessary, close, configVariablesIterator, copy, customColorsIterator, drop, dropAllScriptLibs, dropAndClear, dropIncludeScript, dropScriptLib, dropScriptLib, findCascadingParameterGroup, findColor, findConfigVariable, findCube, findDataSet, findDataSource, findDimension, findElement, findImage, findJointDataSet, findLevel, findLibrary, findMasterPage, findNativeStyle, findParameter, findReportItemTheme, findResource, findResource, findScriptLib, findStyle, findTemplateDataSet, findTheme, generateHandleList, getAllCubes, getAllDataSets, getAllDataSources, getAllImages, getAllIncludeScripts, getAllLibraries, getAllParameters, getAllScriptLibs, getAllSharedDimensions, getAuthor, getCommandStack, getComments, getCreatedBy, getDefaultUnits, getDescription, getDescriptionKey, getDisplayDescription, getElement, getElementByID, getErrorList, getFileEncoding, getFileName, getHelpGuide, getIncludeResource, getIncludeResources, getInitialize, getLibraries, getLibraries, getLibrary, getLineNo, getLineNoByID, getMessage, getMessage, getMessage, getMessageKeys, getNativeStructureList, getOptions, getResourceFolder, getSubject, getSymbolicName, getSystemId, getTheme, getTitle, getTitleKey, getTranslation, getTranslationKeys, getTranslations, getVersion, getVisibleCubes, getVisibleDataSets, getVisibleDataSources, getVisibleImages, getVisibleModules, getWarningList, includeScriptsIterator, initializeModule, isInclude, isReadOnly, needsSave, onSave, removeAttributeListener, removeDisposeListener, removeResourceChangeListener, removeValidationListener, rename, rename, rename, save, saveAs, scriptLibsIterator, serialize, setAuthor, setComments, setCreatedBy, setDefaultUnits, setDescription, setDescriptionKey, setFileName, setHelpGuide, setIncludeResource, setIncludeResources, setInitialize, setOptions, setResourceFolder, setSubject, setSymbolicName, setTitle, setTitleKey, shifIncludeScripts, shiftScriptLibs, sortVisibleElements
-
Methods inherited from class org.eclipse.birt.report.model.api.DesignElementHandle
add, add, addElement, addElement, addListener, addUserPropertyDefn, cachePropertyHandles, canContain, canContain, canContain, canContain, canDrop, canEdit, canTransformToTemplate, clearAllProperties, clearContents, clearProperty, clientsIterator, copyPropertyTo, createTemplateElement, derivedIterator, doSort, drop, drop, dropAndClear, dropAndClear, dropUserPropertyDefn, findContentSlot, getBooleanProperty, getChoices, getColorProperty, getContainer, getContainerPropertyHandle, getContainerSlotHandle, getContent, getContentCount, getContents, getDefn, getDesign, getDesignHandle, getDimensionProperty, getDisplayLabel, getDisplayLabel, getDisplayProperty, getEffectiveModule, getElementFactory, getElementProperty, getEventHandlerClass, getExpressionProperty, getExtends, getExternalizedValue, getExternalizedValue, getExternalizedValue, getFactoryElementHandle, getFactoryPropertyHandle, getFloatProperty, getFontProperty, getFullName, getHostViewHandle, getID, getIndex, getIntProperty, getListProperty, getListProperty, getMethods, getModule, getModuleHandle, getName, getNumberProperty, getPrivateStyle, getProperty, getPropertyBinding, getPropertyBindingExpression, getPropertyBindings, getPropertyDefn, getPropertyHandle, getPropertyIterator, getQualifiedName, getRoot, getSemanticErrors, getSlot, getStringProperty, getStyle, getUserProperties, getUserPropertyDefnHandle, getXPath, hasLocalProperties, hasSemanticError, initializeSlotHandles, isInTemplateParameter, isTemplateParameterValue, isValid, localize, move, move, moveTo, moveTo, moveTo, moveTo, newHandlerOnEachEvent, paste, paste, paste, paste, removeListener, revertToReportItem, revertToTemplate, semanticCheck, setBooleanProperty, setEncryption, setEventHandlerClass, setExpressionProperty, setExtends, setExtendsElement, setExtendsName, setFloatProperty, setIntProperty, setName, setNewHandlerOnEachEvent, setNumberProperty, setProperties, setProperty, setPropertyBinding, setPropertyBinding, setStringProperty, setStyle, setStyleElement, setStyleName, setValid, shift, showError, slotsIterator
-
-
-
-
Method Detail
-
addConfigVariable
public void addConfigVariable(ConfigVariable configVar) throws SemanticException
Description copied from class:ModuleHandleImplAdds a new config variable.- Overrides:
addConfigVariablein classModuleHandleImpl- Parameters:
configVar- the config variable- Throws:
SemanticException- if the name is empty or the same name exists.
-
addImage
public void addImage(EmbeddedImage image) throws SemanticException
Description copied from class:ModuleHandleImplAdds a new embedded image.- Overrides:
addImagein classModuleHandleImpl- Parameters:
image- the image to add- Throws:
SemanticException- if the name is empty, type is invalid, or the same name exists.
-
addTranslation
public void addTranslation(java.lang.String resourceKey, java.lang.String locale, java.lang.String text) throws CustomMsgExceptionDescription copied from class:ModuleHandleImplAdds a new translation to the design.- Overrides:
addTranslationin classModuleHandleImpl- Parameters:
resourceKey- resource key for the messagelocale- the string value of a locale for the translation. Locale should be in java-defined format( en, en-US, zh_CN, etc.)text- translated text for the locale- Throws:
CustomMsgException- if the resource key is duplicate or missing, or locale is not a valid format.- See Also:
ModuleHandleImpl.getTranslation(String, String)
-
dropConfigVariable
public void dropConfigVariable(java.lang.String name) throws SemanticExceptionDescription copied from class:ModuleHandleImplDrops a config variable.- Overrides:
dropConfigVariablein classModuleHandleImpl- Parameters:
name- config variable name- Throws:
SemanticException- if no config variable is found.
-
dropImage
public void dropImage(java.util.List images) throws SemanticExceptionDescription copied from class:ModuleHandleImplDrops an embedded image handle list from the design. Each one in the list is the instance ofEmbeddedImageHandle.- Overrides:
dropImagein classModuleHandleImpl- Parameters:
images- the image handle list to remove- Throws:
SemanticException- if any image in the list is not found.
-
dropImage
public void dropImage(java.lang.String name) throws SemanticExceptionDescription copied from class:ModuleHandleImplDrops an embedded image from the design.- Overrides:
dropImagein classModuleHandleImpl- Parameters:
name- the image name- Throws:
SemanticException- if the image is not found.
-
dropTranslation
public void dropTranslation(java.lang.String resourceKey, java.lang.String locale) throws CustomMsgExceptionDescription copied from class:ModuleHandleImplDrops a translation from the design.- Overrides:
dropTranslationin classModuleHandleImpl- Parameters:
resourceKey- resource key of the message in which this translation saves.locale- the string value of the locale for a translation. Locale should be in java-defined format( en, en-US, zh_CN, etc.)- Throws:
CustomMsgException- ifresourceKeyisnull.- See Also:
ModuleHandleImpl.getTranslation(String, String)
-
getComponents
public SlotHandle getComponents()
Description copied from class:ModuleHandleImplReturns a slot handle to work with the top-level components within the report.- Overrides:
getComponentsin classModuleHandleImpl- Returns:
- A handle for working with the components.
-
getDataSets
public SlotHandle getDataSets()
Description copied from class:ModuleHandleImplReturns a slot handle to work with the data sets within the report. Note that the order of the data sets within the slot is unimportant.- Overrides:
getDataSetsin classModuleHandleImpl- Returns:
- A handle for working with the data sets.
-
getDataSources
public SlotHandle getDataSources()
Description copied from class:ModuleHandleImplReturns a slot handle to work with the data sources within the report. Note that the order of the data sources within the slot is unimportant.- Overrides:
getDataSourcesin classModuleHandleImpl- Returns:
- A handle for working with the data sources.
-
getFlattenParameters
public java.util.List getFlattenParameters()
Description copied from class:ModuleHandleImplReturns the flatten Parameters/ParameterGroups of the design. This method put all Parameters and ParameterGroups into a list then return it. The return list is sorted by on the display name of the parameters.- Overrides:
getFlattenParametersin classModuleHandleImpl- Returns:
- the sorted, flatten parameters and parameter groups.
-
getMasterPages
public SlotHandle getMasterPages()
Description copied from class:ModuleHandleImplReturns a slot handle to work with the master pages within the report. Note that the order of the master pages within the slot is unimportant.- Overrides:
getMasterPagesin classModuleHandleImpl- Returns:
- A handle for working with the master pages.
-
getParameters
public SlotHandle getParameters()
Description copied from class:ModuleHandleImplReturns a slot handle to work with the top-level parameters and parameter groups within the report. The order that the items appear within the slot determines the order in which they appear in the "requester" UI.- Overrides:
getParametersin classModuleHandleImpl- Returns:
- A handle for working with the parameters and parameter groups.
-
imagesIterator
public java.util.Iterator imagesIterator()
Description copied from class:ModuleHandleImplReturns the iterator over all embedded images of this module instance. Each one is the instance ofEmbeddedImageHandle- Overrides:
imagesIteratorin classModuleHandleImpl- Returns:
- the iterator over all embedded images.
- See Also:
EmbeddedImageHandle
-
replaceConfigVariable
public void replaceConfigVariable(ConfigVariable oldVar, ConfigVariable newVar) throws SemanticException
Description copied from class:ModuleHandleImplReplaces the old config variable with the new one.- Overrides:
replaceConfigVariablein classModuleHandleImpl- Parameters:
oldVar- the old config variablenewVar- the new config variable- Throws:
SemanticException- if the old config variable is not found or the name of new one is empty.
-
replaceImage
public void replaceImage(EmbeddedImage oldVar, EmbeddedImage newVar) throws SemanticException
Description copied from class:ModuleHandleImplReplaces the old embedded image with the new one.- Overrides:
replaceImagein classModuleHandleImpl- Parameters:
oldVar- the old embedded imagenewVar- the new embedded image- Throws:
SemanticException- if the old image is not found or the name of new one is empty.
-
getAllStyles
public java.util.List getAllStyles()
Description copied from class:ModuleHandleImplReturns all style element handles that this modules and the included modules contain.- Overrides:
getAllStylesin classModuleHandleImpl- Returns:
- all style element handles that this modules and the included modules contain.
-
getVisibleThemes
public java.util.List getVisibleThemes(int level)
Description copied from class:ModuleHandleImplReturns theme handles according the input level.- Overrides:
getVisibleThemesin classModuleHandleImpl- Parameters:
level- anintvalue, which should be the one defined inIVisibleLevelControl.- Returns:
- theme handles according the input level
-
getVisibleReportItemThemes
public java.util.List<ReportItemThemeHandle> getVisibleReportItemThemes(int level, java.lang.String type)
Description copied from class:ModuleHandleImplReturns report item theme handles according the input level.- Overrides:
getVisibleReportItemThemesin classModuleHandleImpl- Parameters:
level- anintvalue, which should be the one defined inIVisibleLevelControl.- Returns:
- theme handles according the input level
-
getParametersAndParameterGroups
public java.util.List getParametersAndParameterGroups()
Description copied from class:ModuleHandleImplReturns parameters and parameter groups on the module. Those parameters included in the parameter groups are not included in the return list.- Overrides:
getParametersAndParameterGroupsin classModuleHandleImpl- Returns:
- parameters and parameter groups
-
getAllPages
public java.util.List getAllPages()
Description copied from class:ModuleHandleImplReturns all page handles that this modules and the included modules contain.- Overrides:
getAllPagesin classModuleHandleImpl- Returns:
- all page handles that this modules and the included modules contain.
-
shiftLibrary
public void shiftLibrary(LibraryHandle library, int toPosn) throws SemanticException
Description copied from class:ModuleHandleImplShifts the library to new position. This method might affect the style reference, because the library order is changed.- Overrides:
shiftLibraryin classModuleHandleImpl- Parameters:
library- the library to shifttoPosn- the new position- Throws:
SemanticException- if error is encountered when shifting
-
includeLibrariesIterator
public java.util.Iterator includeLibrariesIterator()
Description copied from class:ModuleHandleImplReturns the iterator over all included libraries. Each one is the instance ofIncludeLibraryHandle- Overrides:
includeLibrariesIteratorin classModuleHandleImpl- Returns:
- the iterator over all included libraries.
- See Also:
IncludedLibraryHandle
-
includeLibrary
public void includeLibrary(java.lang.String libraryFileName, java.lang.String namespace) throws DesignFileException, SemanticExceptionDescription copied from class:ModuleHandleImplIncludes one library with the given library file name. The new library will be appended to the library list.- Overrides:
includeLibraryin classModuleHandleImpl- Parameters:
libraryFileName- library file namenamespace- library namespace- Throws:
DesignFileException- if the library file is not found, or has fatal error.SemanticException- if error is encountered when handlingIncludeLibrarystructure list.
-
dropLibrary
public void dropLibrary(LibraryHandle library) throws SemanticException
Description copied from class:ModuleHandleImplDrops the given library from the included libraries of this design file.- Overrides:
dropLibraryin classModuleHandleImpl- Parameters:
library- the library to drop- Throws:
SemanticException- if error is encountered when handlingIncludeLibrarystructure list. Or it maybe because that the given library is not found in the design. Or that the library has descedents in the current module
-
reloadLibrary
public void reloadLibrary(LibraryHandle libraryToReload) throws SemanticException, DesignFileException
Description copied from class:ModuleHandleImplReloads the library with the given library file path. If the library already is included directly, reload it. If the library is not included, exception will be thrown.Call this method cautiously ONLY on the condition that the library file is REALLY changed outside. After reload successfully, the command stack is cleared.
- Overrides:
reloadLibraryin classModuleHandleImpl- Parameters:
libraryToReload- the library instance- Throws:
SemanticException- if error is encountered when handlingIncludeLibrarystructure list. Or it maybe because that the given library is not found in the design. Or that the library has descedents in the current moduleDesignFileException- if the library file is not found, or has fatal error.
-
reloadLibraries
public void reloadLibraries() throws SemanticException, DesignFileExceptionDescription copied from class:ModuleHandleImplReloads all libraries this module included.Call this method cautiously ONLY on the condition that the library file is REALLY changed outside. After reload successfully, the command stack is cleared.
ModuleHandleImpl.reloadLibrary(LibraryHandle)- Overrides:
reloadLibrariesin classModuleHandleImpl- Throws:
SemanticExceptionDesignFileException
-
reloadLibrary
public void reloadLibrary(java.lang.String reloadPath) throws SemanticException, DesignFileExceptionDescription copied from class:ModuleHandleImplReloads the library with the given library file path. If the library already is included directly or indirectly(that is, the reload path could be the path of grandson of this module), reload it. If the library is not included, exception will be thrown.Call this method cautiously ONLY on the condition that the library file is REALLY changed outside. After reload successfully, the command stack is cleared.
- Overrides:
reloadLibraryin classModuleHandleImpl- Parameters:
reloadPath- this is supposed to be an absolute path, not in url form.- Throws:
SemanticException- if error is encountered when handlingIncludeLibrarystructure list. Or it maybe because that the given library is not found in the design. Or that the library has descedents in the current moduleDesignFileException- if the library file is not found, or has fatal error.
-
dropLibraryAndBreakExtends
public void dropLibraryAndBreakExtends(LibraryHandle library) throws SemanticException
Description copied from class:ModuleHandleImplDrops the given library from the design and break all the parent/child relationships. All child element will be localized in the module.- Overrides:
dropLibraryAndBreakExtendsin classModuleHandleImpl- Parameters:
library- the given library to drop- Throws:
SemanticException- if errors occured when drop the library.It may be because that the library is not found in the design or that some elements can not be localized properly.
-
openCssStyleSheet
public CssStyleSheetHandle openCssStyleSheet(java.lang.String fileName) throws StyleSheetException
Description copied from class:ModuleHandleImplGets the result style sheet with given file name of an external CSS2 resource.- Overrides:
openCssStyleSheetin classModuleHandleImpl- Parameters:
fileName- the file name of the external CSS resource- Returns:
- the
CssStyleSheetHandleif the external resource is successfully loaded - Throws:
StyleSheetException- thrown if the resource is not found, or there are syntax errors in the resource
-
openCssStyleSheet
public CssStyleSheetHandle openCssStyleSheet(java.io.InputStream is) throws StyleSheetException
Description copied from class:ModuleHandleImplGets the result style sheet with given file name of an external CSS2 resource.- Overrides:
openCssStyleSheetin classModuleHandleImpl- Parameters:
is- the input stream of the resource- Returns:
- the
CssStyleSheetHandleif the external resource is successfully loaded - Throws:
StyleSheetException- thrown if the resource is not found, or there are syntax errors in the resource
-
setThemeName
public void setThemeName(java.lang.String themeName) throws SemanticExceptionDescription copied from class:ModuleHandleImplSets the theme to a report.- Overrides:
setThemeNamein classModuleHandleImpl- Parameters:
themeName- the name of the theme- Throws:
SemanticException
-
setTheme
public void setTheme(ThemeHandle theme) throws SemanticException
Description copied from class:ModuleHandleImplSets the theme to a report.- Overrides:
setThemein classModuleHandleImpl- Parameters:
theme- the theme instance- Throws:
SemanticException
-
-