Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

com.flexstor.flexdbserver.services.asset.iptc
Class FileInfoPSDService  view FileInfoPSDService download FileInfoPSDService.java

java.lang.Object
  extended bycom.flexstor.flexdbserver.services.asset.iptc.FileInfoPSDService
All Implemented Interfaces:
com.flexstor.flexdbserver.services.Service

public class FileInfoPSDService
extends java.lang.Object
implements com.flexstor.flexdbserver.services.Service

FileInfoPSDService

This service will obtain the IPTC information from a Photoshop file and place it in the metadata based on the configuration specification in the roletype_services.config file.

Configurable Properties in services.config

Asset-file-type/subservice code mapping. Specific file types must be mapped to specific subservice parsers. The file type name must be the name used in the Typer service definition file. The currently available parser/type mappings are:
EPSType = PSDType = TIFFType =

Configurable Properties in roletype_services.config
Any combination of the following properties can be set to correspond to an asset or element level field: Caption, CaptionWriter, Headline, SpecialInstructions, Keywords,Category, SupplementalCategories,Urgency, Byline, BylineTitle, Credit, Source, ObjectName, DateCreated,City, ProvinceState, CountryName, OriginalTransmissionReference, and CopyrightNotice
For example:
service2.Keywords = Asset,Asset Notes
or
service2.Caption = Element,Notes
In/Out Properties for Assets
Attribute IN OUT Default IN Default OUT
ROLE     ALL ALL
Highres X X    
Lowres X X    
Thumbnail X X    
Layout X X    
Video X X    
Audio X X    
TYPE X* X* ALL* ALL*
FLAG
PARENT X X X X
CHLDREN X X    
ALL X X    
TEMP_PARENT X X    
TEMP_CHILDREN X X    
TEMP_ALL X X    
*Note: This service will only operate on Photoshop files. The service does some byte matching similar to the FileTyper to make sure it has a Photoshop file before it even attempts to parse the IPTC information from it. However, the actual Type name is not verified and so it could potentially be anything.

Input Data Object

com.flexstor.common.importprocessor.ImportData

Output Data Object

com.flexstor.common.importprocessor.ImportResult


Field Summary
 java.lang.String[][] asFileInfoDataItems
          These are the possible "File Info..." fields which can be mapped to asset data fields.
protected  com.flexstor.flexdbserver.services.ServiceContext context
           
private  java.util.Hashtable hAssetToSubservice
          This hashtable holds the asset file type to subservice mapping
private  java.util.Hashtable hDataToField
          This hashtable holds the IPTC_dataset_number to Asset_field mapping
 java.lang.String IDENTIFIER
          Is this the MKS identifier? Hmm...
private  com.flexstor.common.importprocessor.ImportData importData
          The import data object.
private  com.flexstor.ejb.disguise.persist.ServerDisguiseExtendData refDisguiseExtend
          The disguise extend data contains the field labels, etc., for the disguise.
private  java.lang.String sThisService
          A string for holding the service name (set during initData)
protected  boolean successful
          The final result; whether we were successful.
 
Constructor Summary
FileInfoPSDService()
           
 
Method Summary
 com.flexstor.common.data.ActionResult go()
          Start of the Service
 void initData(com.flexstor.common.data.ActionData actionData)
          Data initialization method called at the beginning of the service.
private  boolean processAsset(com.flexstor.common.data.ejb.disguiserecord.DisguiseAssetRecordData anAsset)
          Cycle through the IPTC info already found and retrieved from a file and attach it to the Asset
 void setServiceContext(com.flexstor.flexdbserver.services.ServiceContext context)
          Calls before the service is initialized (before initData is called) to pass information about the environment in which the service is running.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

IDENTIFIER

public java.lang.String IDENTIFIER
Is this the MKS identifier? Hmm...


context

protected com.flexstor.flexdbserver.services.ServiceContext context

sThisService

private java.lang.String sThisService
A string for holding the service name (set during initData)


successful

protected boolean successful
The final result; whether we were successful. Start out an optimist.


importData

private com.flexstor.common.importprocessor.ImportData importData
The import data object.


refDisguiseExtend

private com.flexstor.ejb.disguise.persist.ServerDisguiseExtendData refDisguiseExtend
The disguise extend data contains the field labels, etc., for the disguise.


hDataToField

private java.util.Hashtable hDataToField
This hashtable holds the IPTC_dataset_number to Asset_field mapping


hAssetToSubservice

private java.util.Hashtable hAssetToSubservice
This hashtable holds the asset file type to subservice mapping


asFileInfoDataItems

public final java.lang.String[][] asFileInfoDataItems
These are the possible "File Info..." fields which can be mapped to asset data fields. The string at [n][0] is the label as it appears in Photoshop 5.5. The number is the IPTC mapped dataset number.

Constructor Detail

FileInfoPSDService

public FileInfoPSDService()
Method Detail

setServiceContext

public void setServiceContext(com.flexstor.flexdbserver.services.ServiceContext context)
Calls before the service is initialized (before initData is called) to pass information about the environment in which the service is running. This environment consists of information about the properties set for the service in one of these files (services.config, roletype_services.config, or *.ctl), plus methods to access other information such as an instance of the service broker to invoke other services, the transaction id for the service, file separator character and local path for the installation directory and configuration directory.

Specified by:
setServiceContext in interface com.flexstor.flexdbserver.services.Service

initData

public void initData(com.flexstor.common.data.ActionData actionData)
Data initialization method called at the beginning of the service.

Specified by:
initData in interface com.flexstor.flexdbserver.services.Service

go

public com.flexstor.common.data.ActionResult go()
Start of the Service

Specified by:
go in interface com.flexstor.flexdbserver.services.Service

processAsset

private boolean processAsset(com.flexstor.common.data.ejb.disguiserecord.DisguiseAssetRecordData anAsset)
Cycle through the IPTC info already found and retrieved from a file and attach it to the Asset