Namespace Sdl.FileTypeSupport.Framework.NativeApi
Classes
AbstractNativeExtractionContentProcessor
Abstract base class that can be used to build native content extraction processors.
The default implementation provides a transparent "do nothing"
content processor that simply forwards the calls that it receives on
its INative
Your implementation can simply override the content handler methods for the type of content that it is interested in, and rely on the default implementations for anything else.
AbstractNativeExtractionGenerationContentProcessor
Base class for components that are intended to be used as native content processors,
either for extraction or generation. Implements both interfaces, and stores
the output variable as an IAbstract
AbstractNativeFileParser
Abstract base class that provides boilerplate implementation for native file parsers.
Deriving your file parser from this class will save you some
implementation work. Provides a default implementation of the
Parse
AbstractNativeFileTypeComponent
Convenient base class for implementing file type components.
Holds data members that are supplied by the framework during initialization.
AbstractNativeFileWriter
Abstract base class that can be used to build native file writers.
Deriving your file writer from this class takes care of some of the basics of implementing file writer interfaces.
This class possesses a default implementation of the INative
This class also implements the INative
AbstractNativeGenerationContentProcessor
Abstract base class that can be used to build native content generation processors.
The default implementation provides a transparent "do nothing"
content processor that simply forwards the calls that it receives on
its INative
Your implementation can simply override the content handler methods for the type of content it is interested in, and rely on the default implementations for anything else.
ConflictingIdException
Exception thrown from Publish
LocationMarkerId
Unique identifier for a location in native or bilingual content; used
to associated locations with messages in calls to Location
NativeTextLocation
Reference to a location inside a plain text file, specified through line and offset numbers.
ProcessSubContentEventArgs
Event args which are used by the ProcessSubContent event
ProgressEventArgs
Progress event for progress indicators.
RevisionTypeNotSupportedException
Exception thrown when the wrong RevisionType is set on RevisionProperties or FeedbackProperties
SharedObjectPublishedEventArgs
Information passed in the Shared
SniffInfo
Information returned from Sniff(String, Language, Codepage, INative
SourceCount
A word or character count value
Structs
FileId
Typesafe wrapper for a file identifier string.
ParagraphUnitId
Type safe wrapper around a unique identifier for paragraph units, used
in IParagraph
RepetitionId
Type safe wrapper around a repetition id unique identifier (GUID).
SegmentId
Type-safe wrapper around a segment identifier
TagId
Type-safe wrapper for a tag identifier string
Interfaces
IAbstractBasicTagProperties
Common interface for properties supported by all tags.
IAbstractInlineTagProperties
Common tag properties specific to inline tags, i.e. tags that can be found inside (translatable) text.
IAbstractNativeContentHandler
This is the core streaming interface that is used for input and output of content
to/from native content processor components such as file parsers and file writers
for native file formats. It is specialized into INative
IAbstractTagProperties
Common information on start tags, placeholder tags and structure tags (but not end tags).
IBasicMessageReporter
Basic mechanism for components to report non-fatal issues to the framework. (Fatal errors should yield exceptions.)
IBasicMessageReporterWithExtendedData
IBasicMessageReporterWithExtendedData interface is almost exactly the same as the IBasicMessageReporter except that the ReportMessage method includes an extended data parameter.
ICacheableSubContentParser
Interface implemented by sub-content parsers that need to reuse the parser instance for performance
ICacheableSubContentWriter
Interface implemented by sub-content writers that need to reuse the writer instance for performance
IComment
All available information on a comment: The comment text, the severity level, the author and time stamp, and for comment threads the comment version.
ICommentProperties
Thread of comments
IContextInfo
One piece of context information, with a type, purpose and description, as stored in Contexts.
IContextProperties
Context information passed through the Change
ICustomInfoProperties
Data container for all kinds of custom information
IDependencyFileProperties
Information on a dependency file used during file conversion.
IEndTagProperties
Properties for the end tag that matches a corresponding start tag.
IFilePostTweaker
Implemented by components that modify the file that is generated after it has been written by the generator.
IFilePreTweaker
This interface should be implemented by any objects that can be used to modify the contents of a native file before being processed through an extractor or after being written by a generator.
IFileTweaker
Base interface that contains common functions for the file tweakers. Extended by
IFile
ILockedContentProperties
Information on a locked content, which is protected from modification during localization.
IMetaDataContainer
Common interface implemented by objects that have the capability to hold metadata in the form of string key/value pairs.
INativeContentCycleAware
This interface should be implemented by any native processing components that need to know when the input starts and ends.
The framework will call the methods on this interface before and after parsing the native content.
INativeContentStreamMessageReporter
Message reporting mechanism intended for native content processors. Allows
explicit locations to be associated with messages. The corresponding locations
should be output on the native content stream through calls to
Location
INativeExtractionContentHandler
Specialization of the IAbstract
INativeExtractionContentProcessor
Interface that is implemented by a component that processes native content
during extraction (parsing) of native files. The input is received in the
form of calls to the INative
INativeExtractor
Manages the Parser used to process the native file as well as a set
of INative
The result of the processing consists of calls to the Output.
INativeFileParser
This interface is implemented by all native file parsers. The framework uses this interface to operate the parser.
INativeFileSniffer
A file sniffer is a component that gets invoked to determine if a particular file can be processed.
If the file is supported, the file sniffer may also detect the language and the encoding of a given file, in addition to any other information that will be useful to set up the parser to correctly process it.
INativeFileTypeComponent
Native parsers and native content processor components may implement this interface to get initialized by the framework.
INativeFileVerifier
A native file verifier performs the task of checking the target file produced by the a generator for potential issues.
INativeFileWriter
Interface implemented by components that write to native file formats.
INativeGenerationContentHandler
Extension of the IAbstract
INativeGenerationContentProcessor
Implemented by native content processors used during generation (i.e. writing) of native files.
INativeGenerator
Manages the Writer used to create the native file as well as a set
of INative
The input is received on the Input content handler.
INativeLocationTracker
Provided by the framework to the INative
INativeOutputFileProperties
This interface represents the information communicated to the file type components related to the generation of a native content output file.
INativeOutputSettingsAware
This interface needs to be implemented by any components that should be
'aware' of which settings are used when writing native files.
The Set
INativeSubContentExtractor
Manages the Parser used to process the native file as well as a set
of INative
The result of the processing consists of calls to the Output.
INativeSubContentGenerator
Manages the Writer used to create the native file as well as a set
of INative
The input is received on the Input content handler.
INativeTextLocationMessageReporter
Message reporter specialization that allows line and offset numbers to be associated with messages to relate to locations in plain text files.
IOutputFileInfo
Simple data class designed to hold information on the file to output, which may be required by the
host application. This is used by Get
IParagraphUnitProperties
Properties of a (structure or localizable) paragraph unit
IParser
Interface implemented by parsers. Abstracting this functionality into a separate interface allows you to drive parsing for native and bilingual content in the same way.
IPersistentFileConversionProperties
File-level properties that are guaranteed to be preserved (if necessary persisted to an
intermediate bilingual file format) during different stages of the content processing lifecycle;
passed to native content processors, parsers and writers that implement INative
Components can set these properties during parsing, and they will be made available when generating the translated output, or during any other operation used to process content.
Custom properties can be stored as metadata key/value pairs through the IMeta
IPlaceholderTagProperties
Information on a standalone inline tag, i.e. a tag that can appear inside translatable content, representing a placeholder that should be treated as part of the text and may need to be moved to a different location in the translation.
IPropertiesFactory
Interface implemented by factories for property objects.
All file type components should use this interface to create
properties objects (unless they are created by calling System.
ISegmentPairProperties
Common properties for a source and target segment pair
ISharedObjects
Implemented by the framework to provide access to objects that have been published in order to be shared across components
used for content processing. Components that are 'interested' in shared objects receive an instance
of this interface by implementing IShared
ISharedObjectsAware
Implemented by any file type components (native or bilingual) that require access to shared objects
used during processing.
The framework will call the Set
IStartTagProperties
Information on an inline paired start tag.
IStructureInfo
Structural information to help define how a context should act in a structural tree.
IStructureTagProperties
Information on a tag that represents structural content, or a tag that does not appear inside localizable content.
ISubContentAware
Implemented by parent writers which must insert sub-content into their output stream
ISubContentParser
Interface implemented by sub-content parsers
ISubContentPublisher
Interface which should be implemented by parsers which need to publish sub-content
ISubContentWriter
Interface implemented by sub-content writers
ISubSegmentProperties
Sub-segments are, for example, localizable tag attributes. During conversion to bilingual format, every sub-segment will end up in its own paragraph unit.
The properties StartOffset and Length are required in order to put the translations back into the right places.
ISupportsPersistenceId
Provides access to an internal ID that can be used temporarily by implementations e.g. to persist an object graph.
ISupportsUniqueId
Provides access to an ID that can be used by implementations e.g. to keep the item in a separate structure
ITextProperties
Information on a piece of localizable text
ITranslationOrigin
Information on the origin of a translation.
Enums
AbstractNativeFileParser.Stage
Internal state of the parser
ContentRestriction
Enumeration that indicates to file type components whether the source or target should be used in the output.
ContextPurpose
Purpose for a context, originally from the XLIFF specification
DependencyFileLinkOption
Used in the Preferred
DependencyFileUsage
Values combined as flags for the Expected
DetectionLevel
Indicates the level of confidence with which a property has been determined.
EncodingCategory
Used by the file sniffer (Sniff
ErrorLevel
Severity level for messages
IdConflictResolution
Indicates how conflicting ids should be handled in calls to Publish
LockTypeFlags
Enumterator that contains the available lock types
SegmentationHint
Used in TagProperties
to indicate how the tag should be handled during segmentation.
Severity
Severity level associated with a comment. A higher severity level can make the comment more prominent in the user interface.
SourceCount.CountUnit
The type of count, i.e. word or character
TextContextMatchLevel
Used with textual context matches to indicate the level of matching.
Delegates
ProgressReporter
Delegate defining the signature for progress reporting events.