file2xliff4j
Class PoExporter

java.lang.Object
  extended by file2xliff4j.PoExporter
All Implemented Interfaces:
Converter

public class PoExporter
extends java.lang.Object
implements Converter

Export a GNU Portable Object file for a specified target language.

Author:
Weldon Whipple <weldon@lingotek.com>

Field Summary
 
Fields inherited from interface file2xliff4j.Converter
BLKSIZE, formatSuffix, skeletonSuffix, startXliff, stylesTSkeletonSuffix, tSkeletonSuffix, xliffSuffix, xmlDeclaration
 
Constructor Summary
PoExporter()
          Create a GNU Portable Object exporter
 
Method Summary
 ConversionStatus convert(ConversionMode mode, java.util.Locale language, java.lang.String phaseName, int maxPhase, java.nio.charset.Charset nativeEncoding, FileType nativeFileType, java.lang.String nativeFileName, java.lang.String baseDir, Notifier notifier)
          Deprecated. 
 ConversionStatus convert(ConversionMode mode, java.util.Locale language, java.lang.String phaseName, int maxPhase, java.nio.charset.Charset nativeEncoding, FileType nativeFileType, java.lang.String nativeFileName, java.lang.String baseDir, Notifier notifier, SegmentBoundary boundary, java.io.StringWriter generatedFileName)
          Convert one set of targets (in the translation units of an XLIFF file) to a GNU Portable Object (.po) file, based on the original Portable Object Template (.pot) file.
 ConversionStatus convert(ConversionMode mode, java.util.Locale language, java.lang.String phaseName, int maxPhase, java.nio.charset.Charset nativeEncoding, FileType nativeFileType, java.lang.String nativeFileName, java.lang.String baseDir, Notifier notifier, SegmentBoundary boundary, java.io.StringWriter generatedFileName, java.util.Set<f2xutils.XMLTuXPath> skipList)
          Convert one set of targets (in the translation units of an XLIFF file) to a GNU Portable Object (.po) file, based on the original Portable Object Template (.pot) file.
 java.lang.Object getConversionProperty(java.lang.String property)
          Return an object representing a format-specific (and converter-specific) property.
 FileType getFileType()
          Return the file type that this converter handles.
 void setConversionProperty(java.lang.String property, java.lang.Object value)
          Set a format-specific property that might affect the way that the conversion occurs.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PoExporter

public PoExporter()
Create a GNU Portable Object exporter

Method Detail

convert

public ConversionStatus convert(ConversionMode mode,
                                java.util.Locale language,
                                java.lang.String phaseName,
                                int maxPhase,
                                java.nio.charset.Charset nativeEncoding,
                                FileType nativeFileType,
                                java.lang.String nativeFileName,
                                java.lang.String baseDir,
                                Notifier notifier,
                                SegmentBoundary boundary,
                                java.io.StringWriter generatedFileName)
                         throws ConversionException
Convert one set of targets (in the translation units of an XLIFF file) to a GNU Portable Object (.po) file, based on the original Portable Object Template (.pot) file.

Specified by:
convert in interface Converter
Parameters:
mode - The mode of conversion (to or from XLIFF). It should be ConversionMode.FROM_XLIFF in this case.
language - The language of the XLIFF targets to use substitute in the msgstr lines in the output PO file. The language is used in constructing a unique name for the generated PO file. For example, if a language of ja_JP is specified and the original template was named potapt.pot, the exported PO file will be named potapt.ja_JP.po.
phaseName - The name of the phase to export. If this parameter's value is not null, it is matched against the value of the optional phase-name attribute of the target elements of the XLIFF document. If null, no check is made against a phase-name attribute.

If the phase name string consists entirely of numeric digit(s) equivalent to an integer with value greater than 1 but less than or equal to maxPhase (see next parameter) search for targets with lower numbered phase names.

maxPhase - The maximum phase number. If phaseName is specified as "0" and maxPhase is a non-negative integer, search for the highest "numbered" phase, starting at maxPhase, and searching down to phase "1".
nativeEncoding - The desired encoding of the output PO file.

Warning: If specified, the encoding must "make sense"-- it must be able to represent both the original-language source strings (in the msgid lines of the PO file), as well as the target translation strings (that appear in the translated msgstr lines)!

If uncertain, either specify the UTF-8 Charset or specify null for the value of this parameter. (If null is specified, the PoExporter will use UTF-8 for the output PO file.)

nativeFileType - This parameter is ignored. (It is assumed to be FileType.PO.)
nativeFileName - The name of the original file (previously imported to XLIFF--not including the parent directory components).
baseDir - The directory (in the file system) from which input files (XLIFF and skeleton) will be read, and to which the output file will be written.
notifier - Instance of a class that implements the Notifier interface (to send notifications in case of conversion error).
boundary - (Ignored by all exporters.)
generatedFileName - If non-null, the converter will write the name of the file (without parent directories) to which the generated output file was written.
Returns:
Indicator of the status of the conversion.
Throws:
ConversionException - If a conversion exception is encountered.

convert

public ConversionStatus convert(ConversionMode mode,
                                java.util.Locale language,
                                java.lang.String phaseName,
                                int maxPhase,
                                java.nio.charset.Charset nativeEncoding,
                                FileType nativeFileType,
                                java.lang.String nativeFileName,
                                java.lang.String baseDir,
                                Notifier notifier,
                                SegmentBoundary boundary,
                                java.io.StringWriter generatedFileName,
                                java.util.Set<f2xutils.XMLTuXPath> skipList)
                         throws ConversionException
Convert one set of targets (in the translation units of an XLIFF file) to a GNU Portable Object (.po) file, based on the original Portable Object Template (.pot) file.

Specified by:
convert in interface Converter
Parameters:
mode - The mode of conversion (to or from XLIFF). It should be ConversionMode.FROM_XLIFF in this case.
language - The language of the XLIFF targets to use substitute in the msgstr lines in the output PO file. The language is used in constructing a unique name for the generated PO file. For example, if a language of ja_JP is specified and the original template was named potapt.pot, the exported PO file will be named potapt.ja_JP.po.
phaseName - The name of the phase to export. If this parameter's value is not null, it is matched against the value of the optional phase-name attribute of the target elements of the XLIFF document. If null, no check is made against a phase-name attribute.

If the phase name string consists entirely of numeric digit(s) equivalent to an integer with value greater than 1 but less than or equal to maxPhase (see next parameter) search for targets with lower numbered phase names.

maxPhase - The maximum phase number. If phaseName is specified as "0" and maxPhase is a non-negative integer, search for the highest "numbered" phase, starting at maxPhase, and searching down to phase "1".
nativeEncoding - The desired encoding of the output PO file.

Warning: If specified, the encoding must "make sense"-- it must be able to represent both the original-language source strings (in the msgid lines of the PO file), as well as the target translation strings (that appear in the translated msgstr lines)!

If uncertain, either specify the UTF-8 Charset or specify null for the value of this parameter. (If null is specified, the PoExporter will use UTF-8 for the output PO file.)

nativeFileType - This parameter is ignored. (It is assumed to be FileType.PO.)
nativeFileName - The name of the original file (previously imported to XLIFF--not including the parent directory components).
baseDir - The directory (in the file system) from which input files (XLIFF and skeleton) will be read, and to which the output file will be written.
notifier - Instance of a class that implements the Notifier interface (to send notifications in case of conversion error).
boundary - (Ignored by all exporters.)
generatedFileName - If non-null, the converter will write the name of the file (without parent directories) to which the generated output file was written.
skipList - (Not used by this converter.)
Returns:
Indicator of the status of the conversion.
Throws:
ConversionException - If a conversion exception is encountered.

convert

@Deprecated
public ConversionStatus convert(ConversionMode mode,
                                           java.util.Locale language,
                                           java.lang.String phaseName,
                                           int maxPhase,
                                           java.nio.charset.Charset nativeEncoding,
                                           FileType nativeFileType,
                                           java.lang.String nativeFileName,
                                           java.lang.String baseDir,
                                           Notifier notifier)
                         throws ConversionException
Deprecated. 

Convert one set of targets (in the translation units of an XLIFF file) to a GNU Portable Object (.po) file, based on the original Portable Object Template (.pot) file.

Specified by:
convert in interface Converter
Parameters:
mode - The mode of conversion (to or from XLIFF). It should be ConversionMode.FROM_XLIFF in this case.
language - The language of the XLIFF targets to use substitute in the msgstr lines in the output PO file. The language is used in constructing a unique name for the generated PO file. For example, if a language of ja_JP is specified and the original template was named potapt.pot, the exported PO file will be named potapt.ja_JP.po.
phaseName - The name of the phase to export. If this parameter's value is not null, it is matched against the value of the optional phase-name attribute of the target elements of the XLIFF document. If null, no check is made against a phase-name attribute.

If the phase name string consists entirely of numeric digit(s) equivalent to an integer with value greater than 1 but less than or equal to maxPhase (see next parameter) search for targets with lower numbered phase names.

maxPhase - The maximum phase number. If phaseName is specified as "0" and maxPhase is a non-negative integer, search for the highest "numbered" phase, starting at maxPhase, and searching down to phase "1".
nativeEncoding - The desired encoding of the output PO file.

Warning: If specified, the encoding must "make sense"-- it must be able to represent both the original-language source strings (in the msgid lines of the PO file), as well as the target translation strings (that appear in the translated msgstr lines)!

If uncertain, either specify the UTF-8 Charset or specify null for the value of this parameter. (If null is specified, the PoExporter will use UTF-8 for the output PO file.)

nativeFileType - This parameter is ignored. (It is assumed to be FileType.PO.)
nativeFileName - The name of the original file (previously imported to XLIFF--not including the parent directory components).
baseDir - The directory (in the file system) from which input files (XLIFF and skeleton) will be read, and to which the output file will be written.
notifier - Instance of a class that implements the Notifier interface (to send notifications in case of conversion error).
Returns:
Indicator of the status of the conversion.
Throws:
ConversionException - If a conversion exception is encountered.

getConversionProperty

public java.lang.Object getConversionProperty(java.lang.String property)
Return an object representing a format-specific (and converter-specific) property.

Specified by:
getConversionProperty in interface Converter
Parameters:
property - The name of the property to return.
Returns:
An Object that represents the property's value.

getFileType

public FileType getFileType()
Return the file type that this converter handles. (For importers, this means the file type that it imports to XLIFF; for exporters, it is the file type that ie exports to (from XLIFF).

Specified by:
getFileType in interface Converter
Returns:
the Java Properties (Resource Bundle) file type.

setConversionProperty

public void setConversionProperty(java.lang.String property,
                                  java.lang.Object value)
                           throws ConversionException
Set a format-specific property that might affect the way that the conversion occurs.

Note: This converter needs no format-specific properties. If any are passed, they will be silently ignored.

Specified by:
setConversionProperty in interface Converter
Parameters:
property - The name of the property
value - The value of the property
Throws:
ConversionException - If the property isn't recognized (and if it matters).