net.sf.okapi.common.resource
Class TextUnit

java.lang.Object
  extended by net.sf.okapi.common.resource.TextUnit
All Implemented Interfaces:
IResource, INameable, IReferenceable, ITextUnit

public class TextUnit
extends java.lang.Object
implements ITextUnit

Basic unit of extraction from a filter and also the resource associated with the filter event TEXT_UNIT. The TextUnit object holds the extracted source text in one or more versions, all its properties and annotations, and any target corresponding data.


Field Summary
 
Fields inherited from interface net.sf.okapi.common.resource.ITextUnit
TYPE_CDATA, TYPE_HEADER, TYPE_LIST_ELEMENT, TYPE_PARA, TYPE_TITLE
 
Fields inherited from interface net.sf.okapi.common.IResource
COPY_ALL, COPY_CONTENT, COPY_PROPERTIES, COPY_SEGMENTATION, COPY_SEGMENTED_CONTENT, CREATE_EMPTY
 
Constructor Summary
TextUnit(java.lang.String id)
          Creates a new TextUnit object with its identifier.
TextUnit(java.lang.String id, java.lang.String sourceText)
          Creates a new TextUnit object with its identifier and a text.
TextUnit(java.lang.String id, java.lang.String sourceText, boolean isReferent)
          Creates a new TextUnit object with its ID, a text, and a flag indicating if it is a referent or not.
TextUnit(java.lang.String id, java.lang.String sourceText, boolean isReferent, java.lang.String mimeType)
          Creates a new TextUnit object with its identifier, a text, a flag indicating if it is a referent or not, and a given MIME type.
 
Method Summary
 TextUnit clone()
          Clones this TextUnit.
 void createSourceSegmentation(ISegmenter segmenter)
          Segments the default source content based on the rules provided by a given ISegmenter.
 TextContainer createTarget(LocaleId targetLocale, boolean overwriteExisting, int creationOptions)
          Creates or get the target for this TextUnit.
 Property createTargetProperty(LocaleId locId, java.lang.String name, boolean overwriteExisting, int creationOptions)
          Creates or get a target property based on the corresponding source.
 void createTargetSegmentation(ISegmenter segmenter, LocaleId targetLocale)
          Segments the specified target content based on the rules provided by a given ISegmenter.
 IAlignedSegments getAlignedSegments()
          Creates a new IAlignedSegments object to access and manipulate the segments of this text unit.
<A extends IAnnotation>
A
getAnnotation(java.lang.Class<A> annotationType)
          Gets the annotation object for a given class for this resource.
 java.lang.Iterable<IAnnotation> getAnnotations()
          Gets the iterable list of the annotations for this resource.
 java.lang.String getId()
          Gets the identifier of the resource.
 java.lang.String getMimeType()
          Gets the type of content of this resource.
 java.lang.String getName()
          Gets the name of this resource.
 Property getProperty(java.lang.String name)
          Gets the resource-level property for a given name.
 java.util.Set<java.lang.String> getPropertyNames()
          Gets the names of all the resource-level properties for this resource.
 int getReferenceCount()
          Gets the number of time this referent is referenced to.
 ISkeleton getSkeleton()
          Gets the skeleton object for this resource.
 TextContainer getSource()
          Gets the source object for this text unit (a TextContainer object).
 Property getSourceProperty(java.lang.String name)
          Gets the source property for a given name.
 java.util.Set<java.lang.String> getSourcePropertyNames()
          Gets the names of all the source properties for this resource.
 Segment getSourceSegment(java.lang.String segId, boolean createIfNeeded)
          Gets the source segment for a given segment id.
 ISegments getSourceSegments()
          Gets the segments for the source.
 TextContainer getTarget(LocaleId locId)
          Gets the target object for this text unit for a given locale.
 java.util.Set<LocaleId> getTargetLocales()
          Gets all the target locales for this resource.
 Property getTargetProperty(LocaleId locId, java.lang.String name)
          Gets the target property for a given name and target locale.
 java.util.Set<java.lang.String> getTargetPropertyNames(LocaleId locId)
          Gets the names of all the properties for a given target locale in this resource.
 Segment getTargetSegment(LocaleId trgLoc, java.lang.String segId, boolean createIfNeeded)
          Gets the segment for a given segment id in a given target.
 ISegments getTargetSegments(LocaleId trgLoc)
          Get the segments for a given target.
 java.lang.String getType()
          Gets the type information associated with this resource.
 IVariantSources getVariantSources()
          Returns the variant sources (an IVariantSources object) for this text unit.
 boolean hasProperty(java.lang.String name)
          Indicates if a resource-level property exists for a given name.
 boolean hasSourceProperty(java.lang.String name)
          Indicates if a source property exists for a given name.
 boolean hasTarget(LocaleId locId)
          Indicates if there is a target object for a given locale for this text unit.
 boolean hasTargetProperty(LocaleId locId, java.lang.String name)
          Indicates if a property exists for a given name and target locale.
 boolean hasVariantSources()
          Indicates whether there are any variant sources used in this text unit.
 boolean isEmpty()
          Indicates if the source text of this TextUnit is empty.
 boolean isReferent()
          Indicates if this resource is a referent (i.e.
 boolean isTranslatable()
          Indicates if the content of this resource is translatable.
 boolean preserveWhitespaces()
          Indicates if the white-spaces in the content of this resource should be preserved.
 void removeAllSegmentations()
          Removes all segmentations (source and targets) in this text unit.
 void removeProperty(java.lang.String name)
          Removes a resource-level property of a given name.
 void removeSourceProperty(java.lang.String name)
          Removes a source property of a given name.
 void removeTarget(LocaleId locId)
          Removes a given target object from this text unit.
 void removeTargetProperty(LocaleId locId, java.lang.String name)
          Removes a target property of a given name.
 void setAnnotation(IAnnotation annotation)
          Sets an annotation object for this resource.
protected  void setAnnotations(Annotations annotations)
          Used by TextUnit clone method to copy over all annotations at once.
 void setId(java.lang.String id)
          Sets the identifier of this resource.
 void setIsReferent(boolean value)
          Sets the flag indicating if this resource is a referent (i.e.
 void setIsTranslatable(boolean value)
          Sets the flag indicating if the content of this resource is translatable.
 void setMimeType(java.lang.String mimeType)
          Sets the type of content of this resource.
 void setName(java.lang.String name)
          Sets the name of this resource.
 void setPreserveWhitespaces(boolean value)
          sets the flag indicating if the white-spaces in the content of this resource should be preserved.
 Property setProperty(Property property)
          Sets a resource-level property.
 void setReferenceCount(int value)
          Sets the number of time this referent is referenced to.
 void setSkeleton(ISkeleton skeleton)
          Sets the skeleton object for this resource.
 TextContainer setSource(TextContainer textContainer)
          Sets the source object for this TextUnit.
 TextFragment setSourceContent(TextFragment content)
          Sets the content of the source for this TextUnit.
 Property setSourceProperty(Property property)
          Sets a source property.
 TextContainer setTarget(LocaleId locId, TextContainer text)
          Sets the target object for this text unit for a given locale.
 TextFragment setTargetContent(LocaleId locId, TextFragment content)
          Sets the content of the target for a given locale for this TextUnit.
 Property setTargetProperty(LocaleId locId, Property property)
          Sets a target property.
 void setType(java.lang.String value)
          Sets the type information associated with this resource.
 java.lang.String toString()
          Gets the string representation of the default source container.
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

TextUnit

public TextUnit(java.lang.String id)
Creates a new TextUnit object with its identifier.

Parameters:
id - the identifier of this resource.

TextUnit

public TextUnit(java.lang.String id,
                java.lang.String sourceText)
Creates a new TextUnit object with its identifier and a text.

Parameters:
id - the identifier of this resource.
sourceText - the initial text of the source.

TextUnit

public TextUnit(java.lang.String id,
                java.lang.String sourceText,
                boolean isReferent)
Creates a new TextUnit object with its ID, a text, and a flag indicating if it is a referent or not.

Parameters:
id - the identifier of this resource.
sourceText - the initial text of the source (can be null).
isReferent - indicates if this resource is a referent (i.e. is referred to by another resource) or not.

TextUnit

public TextUnit(java.lang.String id,
                java.lang.String sourceText,
                boolean isReferent,
                java.lang.String mimeType)
Creates a new TextUnit object with its identifier, a text, a flag indicating if it is a referent or not, and a given MIME type.

Parameters:
id - the identifier of this resource.
sourceText - the initial text of the source (can be null).
isReferent - indicates if this resource is a referent (i.e. is referred to by another resource) or not.
mimeType - the MIME type identifier for the content of this TextUnit.
Method Detail

isEmpty

public boolean isEmpty()
Description copied from interface: ITextUnit
Indicates if the source text of this TextUnit is empty.

Specified by:
isEmpty in interface ITextUnit
Returns:
true if the source text of this TextUnit is empty, false otherwise.

getSource

public TextContainer getSource()
Description copied from interface: ITextUnit
Gets the source object for this text unit (a TextContainer object).

Specified by:
getSource in interface ITextUnit
Returns:
the source object for this text unit.

setSource

public TextContainer setSource(TextContainer textContainer)
Description copied from interface: ITextUnit
Sets the source object for this TextUnit. Any existing source object is overwritten.

Specified by:
setSource in interface ITextUnit
Parameters:
textContainer - the source object to set.
Returns:
the source object that has been set.

hasVariantSources

public boolean hasVariantSources()
Description copied from interface: ITextUnit
Indicates whether there are any variant sources used in this text unit.

Specified by:
hasVariantSources in interface ITextUnit
Returns:
true if there are one or more variant sources, false if there are none

getVariantSources

public IVariantSources getVariantSources()
Description copied from interface: ITextUnit
Returns the variant sources (an IVariantSources object) for this text unit.

Specified by:
getVariantSources in interface ITextUnit
Returns:
the variant sources used in this text unit

setSourceContent

public TextFragment setSourceContent(TextFragment content)
Description copied from interface: ITextUnit
Sets the content of the source for this TextUnit.

Specified by:
setSourceContent in interface ITextUnit
Parameters:
content - the new content to set.
Returns:
the new content of the source for this TextUnit.

createTarget

public TextContainer createTarget(LocaleId targetLocale,
                                  boolean overwriteExisting,
                                  int creationOptions)
Description copied from interface: ITextUnit
Creates or get the target for this TextUnit.

If a variant source exists for the target locale, creationOptions apply to the variant source.

Specified by:
createTarget in interface ITextUnit
Parameters:
targetLocale - the target locale.
overwriteExisting - true to overwrite any existing target for the given locale. False to not create a new target object if one already exists for the given locale.
creationOptions - creation options:
  • CREATE_EMPTY: Create an empty target object.
  • COPY_PROPERTIES: Copy the source properties.
  • COPY_CONTENT: Copy the text of the source (and any associated in-line code), but not the segmenation.
  • COPY_SEGMENTATION: Copy the source segmentation.
  • COPY_SEGMENTED_CONTENT: Same as (COPY_CONTENT|COPY_SEGMENTATION).
  • COPY_ALL: Same as (COPY_SEGMENTED_CONTENT|COPY_PROPERTIES).
Returns:
the target object that was created, or retrieved.

getTarget

public TextContainer getTarget(LocaleId locId)
Description copied from interface: ITextUnit
Gets the target object for this text unit for a given locale. If the target does not exists a null is retruned.

Specified by:
getTarget in interface ITextUnit
Parameters:
locId - the locale to query.
Returns:
the target object for this text unit for the given locale, or null if the target does not exist.
See Also:
ITextUnit.createTarget(LocaleId, boolean, int)

setTarget

public TextContainer setTarget(LocaleId locId,
                               TextContainer text)
Description copied from interface: ITextUnit
Sets the target object for this text unit for a given locale.

If the target does not exists, one is created. Any existing content for the given locale is overwritten. To set a target object based on the source, use the ITextUnit.createTarget(LocaleId, boolean, int) method.

Specified by:
setTarget in interface ITextUnit
Parameters:
locId - the target locale.
text - the target content to set.
Returns:
the target content that has been set.

removeTarget

public void removeTarget(LocaleId locId)
Description copied from interface: ITextUnit
Removes a given target object from this text unit. If the given locale does not exist in this text unit nothing happens. Variant source for this target locale will not be affected.

Specified by:
removeTarget in interface ITextUnit
Parameters:
locId - the target locale to remove.

hasTarget

public boolean hasTarget(LocaleId locId)
Description copied from interface: ITextUnit
Indicates if there is a target object for a given locale for this text unit.

Specified by:
hasTarget in interface ITextUnit
Parameters:
locId - the locale to query.
Returns:
true if a target object exists for the given locale, false otherwise.

setTargetContent

public TextFragment setTargetContent(LocaleId locId,
                                     TextFragment content)
Description copied from interface: ITextUnit
Sets the content of the target for a given locale for this TextUnit.

If the target does not exists, one is created. Any existing content for the given locale is overwritten. To set a target object based on the source, use the ITextUnit.createTarget(LocaleId, boolean, int) method.

Specified by:
setTargetContent in interface ITextUnit
Parameters:
locId - the locale to set.
content - the new content to set.
Returns:
the new content for the given target locale for this text unit.

getAlignedSegments

public IAlignedSegments getAlignedSegments()
Description copied from interface: ITextUnit
Creates a new IAlignedSegments object to access and manipulate the segments of this text unit.

Specified by:
getAlignedSegments in interface ITextUnit
Returns:
a new IAlignedSegments object.

getSourceSegments

public ISegments getSourceSegments()
Description copied from interface: ITextUnit
Gets the segments for the source. Un-segmented content return a single segment.

Specified by:
getSourceSegments in interface ITextUnit
Returns:
an object implementing ISegments for the source content.

getSourceSegment

public Segment getSourceSegment(java.lang.String segId,
                                boolean createIfNeeded)
Description copied from interface: ITextUnit
Gets the source segment for a given segment id.

If the segment does not exists, one is created if createIfNeeded is true.

Specified by:
getSourceSegment in interface ITextUnit
Parameters:
segId - the id of the segment to retrieve.
createIfNeeded - true to append a segment at the end of the content and return it if the segment does not exist yet. False to return null when the segment does not exists.
Returns:
the found or created segment, or null.

getTargetSegments

public ISegments getTargetSegments(LocaleId trgLoc)
Description copied from interface: ITextUnit
Get the segments for a given target. Un-segmented content return a single segment. If the target does not exists, one is created, with the same segments as the source, but empty.

Specified by:
getTargetSegments in interface ITextUnit
Parameters:
trgLoc - the locale of the target to retrieve.
Returns:
an object implementing ISegments for the given target content.

getTargetSegment

public Segment getTargetSegment(LocaleId trgLoc,
                                java.lang.String segId,
                                boolean createIfNeeded)
Description copied from interface: ITextUnit
Gets the segment for a given segment id in a given target.

If the target does not exists, one is created.

If the segment does not exists, one is created if createIfNeeded is true.

Specified by:
getTargetSegment in interface ITextUnit
Parameters:
trgLoc - the target locale to look up.
segId - the id of the segment to retrieve.
createIfNeeded - true to append a segment at the end of the target content and return it if the segment does not exist yet. False to return null when the segment does not exists.
Returns:
the found or created segment, or null.

getTargetLocales

public java.util.Set<LocaleId> getTargetLocales()
Description copied from interface: INameable
Gets all the target locales for this resource.

Specified by:
getTargetLocales in interface INameable
Returns:
all the target locales for this resource.

getName

public java.lang.String getName()
Description copied from interface: INameable
Gets the name of this resource. The resource name corresponds to different things depending on the type of resource. For a StartDocument the name is the URI of the document. Otherwise, in most cases the name is the identifier of the resource (This is the equivalent of the XLIFF resname attribute).

Specified by:
getName in interface INameable
Returns:
This resource name, or null if there is none.

setName

public void setName(java.lang.String name)
Description copied from interface: INameable
Sets the name of this resource. The resource name is the equivalent of the XLIFF resname attribute.

Specified by:
setName in interface INameable
Parameters:
name - New name to set.

getType

public java.lang.String getType()
Description copied from interface: INameable
Gets the type information associated with this resource. For example "button".

Specified by:
getType in interface INameable
Returns:
The type information associated with this resource.

setType

public void setType(java.lang.String value)
Description copied from interface: INameable
Sets the type information associated with this resource. For example "button".

Specified by:
setType in interface INameable
Parameters:
value - The new type information.

getMimeType

public java.lang.String getMimeType()
Description copied from interface: INameable
Gets the type of content of this resource. For example "text/xml".

Specified by:
getMimeType in interface INameable
Returns:
The type of content of this resource.

setMimeType

public void setMimeType(java.lang.String mimeType)
Description copied from interface: INameable
Sets the type of content of this resource. For example "text/xml".

Specified by:
setMimeType in interface INameable
Parameters:
mimeType - The new type of content of this resource.

isTranslatable

public boolean isTranslatable()
Description copied from interface: INameable
Indicates if the content of this resource is translatable. By default this indicator is set to true for all resources.

Specified by:
isTranslatable in interface INameable
Returns:
True if the content of this resource is translatable. False if it is not translatable.

setIsTranslatable

public void setIsTranslatable(boolean value)
Description copied from interface: INameable
Sets the flag indicating if the content of this resource is translatable.

Specified by:
setIsTranslatable in interface INameable
Parameters:
value - True to indicate that the content of this resource is translatable.

preserveWhitespaces

public boolean preserveWhitespaces()
Description copied from interface: INameable
Indicates if the white-spaces in the content of this resource should be preserved. By default this indicator is set to false for all resources.

Specified by:
preserveWhitespaces in interface INameable
Returns:
True if the white-spaces in the content of this resource should be preserved.

setPreserveWhitespaces

public void setPreserveWhitespaces(boolean value)
Description copied from interface: INameable
sets the flag indicating if the white-spaces in the content of this resource should be preserved.

Specified by:
setPreserveWhitespaces in interface INameable
Parameters:
value - True to indicate that the white-spaces in the content of this resource should be preserved.

getId

public java.lang.String getId()
Description copied from interface: IResource
Gets the identifier of the resource. This identifier is unique per extracted document and by type of resource. This value is filter-specific. It and may be different from one extraction of the same document to the next. It can a sequential number or not, incremental or not, and it can be not a number. It has no correspondence in the source document ("IDs" coming from the source document are "names" and not available for all resources).

Specified by:
getId in interface IResource
Returns:
the identifier of this resource.

setId

public void setId(java.lang.String id)
Description copied from interface: IResource
Sets the identifier of this resource.

Specified by:
setId in interface IResource
Parameters:
id - the new identifier value.
See Also:
IResource.getId()

getSkeleton

public ISkeleton getSkeleton()
Description copied from interface: IResource
Gets the skeleton object for this resource.

Specified by:
getSkeleton in interface IResource
Returns:
the skeleton object for this resource or null if there is none.

setSkeleton

public void setSkeleton(ISkeleton skeleton)
Description copied from interface: IResource
Sets the skeleton object for this resource.

Specified by:
setSkeleton in interface IResource
Parameters:
skeleton - the skeleton object to set.

isReferent

public boolean isReferent()
Description copied from interface: IReferenceable
Indicates if this resource is a referent (i.e. is referred to by another resource) or not.

Specified by:
isReferent in interface IReferenceable
Returns:
true if this resource is a referent, false if it is not.

setIsReferent

public void setIsReferent(boolean value)
Description copied from interface: IReferenceable
Sets the flag indicating if this resource is a referent (i.e. is referred to by another resource) or not. This also sets the count of time this referent is referenced to 1.

Specified by:
setIsReferent in interface IReferenceable
Parameters:
value - true if the resource is a referent, false if it is not.

getReferenceCount

public int getReferenceCount()
Description copied from interface: IReferenceable
Gets the number of time this referent is referenced to.

Specified by:
getReferenceCount in interface IReferenceable
Returns:
the number of time this referent is referenced to.

setReferenceCount

public void setReferenceCount(int value)
Description copied from interface: IReferenceable
Sets the number of time this referent is referenced to.

Specified by:
setReferenceCount in interface IReferenceable
Parameters:
value - the number of time this referent is referenced to.

getPropertyNames

public java.util.Set<java.lang.String> getPropertyNames()
Description copied from interface: INameable
Gets the names of all the resource-level properties for this resource.

Specified by:
getPropertyNames in interface INameable
Returns:
All the names of the resource-level properties for this resource.

getProperty

public Property getProperty(java.lang.String name)
Description copied from interface: INameable
Gets the resource-level property for a given name.

Specified by:
getProperty in interface INameable
Parameters:
name - Name of the property to retrieve.
Returns:
The property or null if it does not exist.

setProperty

public Property setProperty(Property property)
Description copied from interface: INameable
Sets a resource-level property. If a property already exists it is overwritten.

Specified by:
setProperty in interface INameable
Parameters:
property - The new property to set.
Returns:
The property that has been set.

removeProperty

public void removeProperty(java.lang.String name)
Description copied from interface: INameable
Removes a resource-level property of a given name. If the property does not exists nothing happens.

Specified by:
removeProperty in interface INameable
Parameters:
name - The name of the property to remove.

hasProperty

public boolean hasProperty(java.lang.String name)
Description copied from interface: INameable
Indicates if a resource-level property exists for a given name.

Specified by:
hasProperty in interface INameable
Parameters:
name - The name of the resource-level property to query.
Returns:
True if a resource-level property exists, false otherwise.

getAnnotation

public <A extends IAnnotation> A getAnnotation(java.lang.Class<A> annotationType)
Description copied from interface: IResource
Gets the annotation object for a given class for this resource.

Specified by:
getAnnotation in interface IResource
Parameters:
annotationType - the class of the annotation object to retrieve.
Returns:
the annotation for the given class for this resource.

setAnnotation

public void setAnnotation(IAnnotation annotation)
Description copied from interface: IResource
Sets an annotation object for this resource.

Specified by:
setAnnotation in interface IResource
Parameters:
annotation - the annotation object to set.

getAnnotations

public java.lang.Iterable<IAnnotation> getAnnotations()
Description copied from interface: IResource
Gets the iterable list of the annotations for this resource.

Specified by:
getAnnotations in interface IResource
Returns:
the iterable list of the annotations for this resource.

getSourceProperty

public Property getSourceProperty(java.lang.String name)
Description copied from interface: INameable
Gets the source property for a given name.

Specified by:
getSourceProperty in interface INameable
Parameters:
name - The name of the source property to retrieve.
Returns:
The property or null if it does not exist.

setSourceProperty

public Property setSourceProperty(Property property)
Description copied from interface: INameable
Sets a source property. If a property already exists it is overwritten.

Specified by:
setSourceProperty in interface INameable
Parameters:
property - The new property to set.
Returns:
The property that has been set.

removeSourceProperty

public void removeSourceProperty(java.lang.String name)
Description copied from interface: INameable
Removes a source property of a given name. If the property does not exists nothing happens.

Specified by:
removeSourceProperty in interface INameable
Parameters:
name - The name of the property to remove.

getSourcePropertyNames

public java.util.Set<java.lang.String> getSourcePropertyNames()
Description copied from interface: INameable
Gets the names of all the source properties for this resource.

Specified by:
getSourcePropertyNames in interface INameable
Returns:
All the names of the source properties for this resource.

hasSourceProperty

public boolean hasSourceProperty(java.lang.String name)
Description copied from interface: INameable
Indicates if a source property exists for a given name.

Specified by:
hasSourceProperty in interface INameable
Parameters:
name - The name of the source property to query.
Returns:
True if a source property exists, false otherwise.

getTargetProperty

public Property getTargetProperty(LocaleId locId,
                                  java.lang.String name)
Description copied from interface: INameable
Gets the target property for a given name and target locale.

Specified by:
getTargetProperty in interface INameable
Parameters:
locId - the locale of the property to retrieve.
name - The name of the property to retrieve. This name is case-sensitive.
Returns:
The property or null if it does not exist.

setTargetProperty

public Property setTargetProperty(LocaleId locId,
                                  Property property)
Description copied from interface: INameable
Sets a target property. If a property already exists it is overwritten.

Specified by:
setTargetProperty in interface INameable
Parameters:
locId - The target locale for which this property should be set.
property - The new property to set. This name is case-sensitive.
Returns:
The property that has been set.

removeTargetProperty

public void removeTargetProperty(LocaleId locId,
                                 java.lang.String name)
Description copied from interface: INameable
Removes a target property of a given name. If the property does not exists nothing happens.

Specified by:
removeTargetProperty in interface INameable
Parameters:
locId - The target locale for which this property should be set.
name - The name of the property to remove.

getTargetPropertyNames

public java.util.Set<java.lang.String> getTargetPropertyNames(LocaleId locId)
Description copied from interface: INameable
Gets the names of all the properties for a given target locale in this resource.

Specified by:
getTargetPropertyNames in interface INameable
Parameters:
locId - the target locale to query.
Returns:
all the names of the target properties for the given locale in this resource.

hasTargetProperty

public boolean hasTargetProperty(LocaleId locId,
                                 java.lang.String name)
Description copied from interface: INameable
Indicates if a property exists for a given name and target locale.

Specified by:
hasTargetProperty in interface INameable
Parameters:
locId - the target locale to query.
name - the name of the property to query.
Returns:
true if a property exists, false otherwise.

createTargetProperty

public Property createTargetProperty(LocaleId locId,
                                     java.lang.String name,
                                     boolean overwriteExisting,
                                     int creationOptions)
Description copied from interface: INameable
Creates or get a target property based on the corresponding source.

Specified by:
createTargetProperty in interface INameable
Parameters:
locId - The target locale to use.
name - The name of the property to create (or retrieve)
overwriteExisting - True to overwrite any existing property. False to not create a new property if one exists already.
creationOptions - Creation options:
  • CREATE_EMPTY: Creates an empty property, only the read-only flag of the source is copied.
  • COPY_CONTENT: Creates a new property with all its data copied from the source.
Returns:
The property that was created, or retrieved.

toString

public java.lang.String toString()
Gets the string representation of the default source container. If the container is segmented, the representation shows the merged segments. Inline codes are also included.

Overrides:
toString in class java.lang.Object
Returns:
the string representation of the source container.

clone

public TextUnit clone()
Clones this TextUnit.

Specified by:
clone in interface ITextUnit
Overrides:
clone in class java.lang.Object
Returns:
A new TextUnit object that is a copy of this one.

removeAllSegmentations

public void removeAllSegmentations()
Description copied from interface: ITextUnit
Removes all segmentations (source and targets) in this text unit. All entries are converted to non-segmented entries.

Specified by:
removeAllSegmentations in interface ITextUnit

createSourceSegmentation

public void createSourceSegmentation(ISegmenter segmenter)
Description copied from interface: ITextUnit
Segments the default source content based on the rules provided by a given ISegmenter.

Specified by:
createSourceSegmentation in interface ITextUnit
Parameters:
segmenter - the segmenter to use to create the segments.

createTargetSegmentation

public void createTargetSegmentation(ISegmenter segmenter,
                                     LocaleId targetLocale)
Description copied from interface: ITextUnit
Segments the specified target content based on the rules provided by a given ISegmenter.

Specified by:
createTargetSegmentation in interface ITextUnit
Parameters:
segmenter - the segmenter to use to create the segments.
targetLocale - LocaleId of the target we want to segment.

setAnnotations

protected void setAnnotations(Annotations annotations)
Used by TextUnit clone method to copy over all annotations at once.

Parameters:
annotations - the new annotations to set.