Interface IResourceLocator
-
- All Known Implementing Classes:
DefaultResourceLocator
public interface IResourceLocatorImplements this interface to provide a custom file search algorithm. This class defines the file search algorithm used to locate files referenced in the design. For example, when parsing a design file and a library is encountered, a file locator will be used to locate the library. This interface is implemented differently for each environment. For example, the GUI might have its own file search requirement, while the deployment environment in application server has another.The default file locator is
.DefaultResourceLocatorThe customized file search must be installed before opening designs. Set the file locator using
SessionHandleImpl.setResourceLocator(IResourceLocator)method.
-
-
Field Summary
Fields Modifier and Type Field Description static intALL_RESOURCEThe location mask which searches all the locations.static java.lang.StringBIRT_RESOURCELOCATOR_SEARCH_LOCATIONKey for the location to search in appContext.static intCASCADING_STYLE_SHEETThe type of the cascading style sheet to search.static java.lang.StringFRAGMENT_RESOURCE_HOSTThe host name of the fragments where inner resources are located.static intIMAGEThe type of the images to searchstatic intJAR_FILEThe type for the jar file.static intLIBRARYThe type of the libraries to searchstatic intMESSAGE_FILEThe type for the message file.static intOTHERSThe other types.static intRESOURCE_BUNDLEThe location mask which searches in the resource bundle.static intRESOURCE_DESIGNThe location mask which searches the file relative to design.static intRESOURCE_FILEPATHThe location mask which searches in the file system with path.static intRESOURCE_FOLDERThe location mask which searches in the resource folder.
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description java.net.URLfindResource(ModuleHandle moduleHandle, java.lang.String fileName, int type)Searches the file by the given file name.java.net.URLfindResource(ModuleHandle moduleHandle, java.lang.String fileName, int type, java.util.Map appContext)Searches the file by the given file name and the given user's information.
-
-
-
Field Detail
-
ALL_RESOURCE
static final int ALL_RESOURCE
The location mask which searches all the locations.- See Also:
- Constant Field Values
-
FRAGMENT_RESOURCE_HOST
static final java.lang.String FRAGMENT_RESOURCE_HOST
The host name of the fragments where inner resources are located.- See Also:
- Constant Field Values
-
IMAGE
static final int IMAGE
The type of the images to search- See Also:
- Constant Field Values
-
LIBRARY
static final int LIBRARY
The type of the libraries to search- See Also:
- Constant Field Values
-
CASCADING_STYLE_SHEET
static final int CASCADING_STYLE_SHEET
The type of the cascading style sheet to search.- See Also:
- Constant Field Values
-
JAR_FILE
static final int JAR_FILE
The type for the jar file. Includes .jar type.- See Also:
- Constant Field Values
-
MESSAGE_FILE
static final int MESSAGE_FILE
The type for the message file.- See Also:
- Constant Field Values
-
OTHERS
static final int OTHERS
The other types.- See Also:
- Constant Field Values
-
BIRT_RESOURCELOCATOR_SEARCH_LOCATION
static final java.lang.String BIRT_RESOURCELOCATOR_SEARCH_LOCATION
Key for the location to search in appContext.- See Also:
- Constant Field Values
-
RESOURCE_FILEPATH
static final int RESOURCE_FILEPATH
The location mask which searches in the file system with path.- See Also:
- Constant Field Values
-
RESOURCE_BUNDLE
static final int RESOURCE_BUNDLE
The location mask which searches in the resource bundle.- See Also:
- Constant Field Values
-
RESOURCE_FOLDER
static final int RESOURCE_FOLDER
The location mask which searches in the resource folder.- See Also:
- Constant Field Values
-
RESOURCE_DESIGN
static final int RESOURCE_DESIGN
The location mask which searches the file relative to design.- See Also:
- Constant Field Values
-
-
Method Detail
-
findResource
java.net.URL findResource(ModuleHandle moduleHandle, java.lang.String fileName, int type)
Searches the file by the given file name. The actual search algorithm will be different in different environment. The file type is just helpful when different file searching steps for different files are required. Because new file type will be added if design file includes new file, the default searching steps are encouraged for unknown file type to improve robustness.- Parameters:
moduleHandle- The module to tell the search context. This could be null if the search algorithm does not need the design. It can be the instance of one ofReportDesignHandleandLibraryHandle.fileName- The file name to be searched. This could be an absolute path or a relative path.type- The type of the file to search. The value must be one ofIMAGE,LIBRARY,CASCADING_STYLE_SHEETandMESSAGEFILE.- Returns:
- The
URLobject.nullif the file can not be found.
-
findResource
java.net.URL findResource(ModuleHandle moduleHandle, java.lang.String fileName, int type, java.util.Map appContext)
Searches the file by the given file name and the given user's information. The actual search algorithm will be different in different environment. The file type is just helpful when different file searching steps for different files are required. Because new file type will be added if design file includes new file, the default searching steps are encouraged for unknown file type to improve robustness.- Parameters:
moduleHandle- The module to tell the search context. This could be null if the search algorithm does not need the design. It can be the instance of one ofReportDesignHandleandLibraryHandle.fileName- The file name to be searched. This could be an absolute path or a relative path.type- The type of the file to search. The value must be one ofIMAGE,LIBRARY,CASCADING_STYLE_SHEETandMESSAGEFILE.appContext- The map containing the user's information- Returns:
- The
URLobject.nullif the file can not be found.
-
-