- All Known Implementing Classes:
DTFJImageFactory,ImageFactory,J9DDRImageFactory,JCImageFactory,PHDImageFactory
public interface ImageFactory
This interface is used for classes which can produce instances of Image implementers.
Classes that implement this interface should provide a zero argument, public
constructor so that they can be created using Class.newInstance().
Image image;
try {
Class<?> factoryClass = Class.forName("com.ibm.dtfj.image.j9.ImageFactory");
ImageFactory factory = (ImageFactory) factoryClass.newInstance();
image = factory.getImage(new File(coreFileName), new File(xmlFileName));
} catch (ClassNotFoundException e) {
System.err.println("Could not find DTFJ factory class:");
e.printStackTrace(System.err);
} catch (IllegalAccessException e) {
System.err.println("Could not instantiate DTFJ factory class:");
e.printStackTrace(System.err);
} catch (InstantiationException e) {
System.err.println("Could not instantiate DTFJ factory class:");
e.printStackTrace(System.err);
} catch (IOException e) {
System.err.println("Could not find file required for bootstrapping:");
e.printStackTrace(System.err);
}
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final StringThis is the name of thejava.util.logging.Loggersubsystem to which DTFJ passes verbose messages.static final intThe major version number of the current API.static final intThe minor version number of the current API.static final StringIf the image is to be created from a core file inside an archive, this property controls where the file will extracted. -
Method Summary
Modifier and TypeMethodDescriptionintFetch the DTFJ major version number.intFetch the DTFJ minor version number.intFetch the DTFJ modification level.Creates a newImageobject based on the contents ofimageFile.Creates a newImageobject based on the contents ofimageFileandmetadata.getImage(ImageInputStream in, URI sourceID) Creates a newImageobject based on the contents of the given input stream.getImage(ImageInputStream in, ImageInputStream metadata, URI sourceID) Creates a newImageobject based on the contents of the given input stream.Image[]getImagesFromArchive(File archive, boolean extract) Creates an array ofImageobjects from an archive such as a zip or jar file.
-
Field Details
-
DTFJ_MAJOR_VERSION
static final int DTFJ_MAJOR_VERSIONThe major version number of the current API.- See Also:
-
DTFJ_MINOR_VERSION
static final int DTFJ_MINOR_VERSIONThe minor version number of the current API.- See Also:
-
DTFJ_LOGGER_NAME
This is the name of thejava.util.logging.Loggersubsystem to which DTFJ passes verbose messages.- See Also:
-
SYSTEM_PROPERTY_TMPDIR
If the image is to be created from a core file inside an archive, this property controls where the file will extracted. If this is not specified then the value of java.io.tmpdir will be used.- Since:
- 1.10
- See Also:
-
-
Method Details
-
getImage
Creates a newImageobject based on the contents ofimageFile.- Parameters:
imageFile- a file with Image information, typically a core file- Returns:
- an instance of Image
- Throws:
IOException- if there's a problem reading the specified fileNullPointerException- ifimageFileis null
-
getImage
Creates a newImageobject based on the contents of the given input stream.- Parameters:
in- a stream with image information, typically a core filesourceID-URIidentifying the source of the image stream- Returns:
- an instance of
Image - Throws:
IOException- if there's a problem reading the given streamUnsupportedOperationException- if the factory does not support this methodNullPointerException- if either ofinorsourceIDis null- Since:
- 1.10
-
getImage
Creates a newImageobject based on the contents of the given input stream.- Parameters:
in- a stream with image information, typically a core filemetadata- a stream with metadata associated with the image streamsourceID-URIidentifying the source of the image stream- Returns:
- an instance of
Image - Throws:
IOException- if there's a problem reading the given streamsUnsupportedOperationException- if the factory does not support this methodNullPointerException- if any ofin,metadataorsourceIDis null- Since:
- 1.10
-
getImagesFromArchive
Creates an array ofImageobjects from an archive such as a zip or jar file.- Parameters:
archive- which typically contains one or more diagnostic artifactsextract- true if the files in the archive should be extracted to a temporary directory- Returns:
- an array of
Images - Throws:
IOException- if there's a problem reading the specified archiveUnsupportedOperationException- if the factory does not support this method- Since:
- 1.10
-
getImage
Creates a newImageobject based on the contents ofimageFileandmetadata.- Parameters:
imageFile- a file with image information, typically a core filemetadata- an (implementation-defined) file with additional image information (or null if not required)- Returns:
- an instance of
Image - Throws:
IOException- if there's a problem reading either of the specified filesNullPointerException- ifimageFileis null
-
getDTFJMajorVersion
int getDTFJMajorVersion()Fetch the DTFJ major version number.- Returns:
- an integer corresponding to the DTFJ API major version number
-
getDTFJMinorVersion
int getDTFJMinorVersion()Fetch the DTFJ minor version number.- Returns:
- an integer corresponding to the DTFJ API minor version number
-
getDTFJModificationLevel
int getDTFJModificationLevel()Fetch the DTFJ modification level.- Returns:
- an integer corresponding to the DTFJ API modification level
- Since:
- SDK 6.0 SR1 (DTFJ version 1.2)
-