Interface IProject

All Known Implementing Classes:
NotLoadedProject, RealProject

public interface IProject
Interface for access to loaded project. Each loaded project will be new instance of IProject.
  • Method Details

    • saveProjectProperties

      void saveProjectProperties() throws Exception
      Save project properties only.
      Throws:
      Exception
    • saveProject

      void saveProject(boolean doTeamSync)
      Save project.
    • teamSyncPrepare

      void teamSyncPrepare() throws Exception
      Prepare for team synchronization from save thread.
      Throws:
      Exception
    • isTeamSyncPrepared

      boolean isTeamSyncPrepared()
      Check if team synchronization prepared.
    • teamSync

      void teamSync()
      Execute synchronization.
    • closeProject

      void closeProject()
      Close project.
    • compileProject

      void compileProject(String sourcePattern) throws Exception
      Create translated documents.
      Throws:
      Exception
    • compileProjectAndCommit

      void compileProjectAndCommit(String sourcePattern, boolean doPostProcessing, boolean commitTargetFiles) throws Exception
      Builds translated files corresponding to sourcePattern and creates fresh TM files.
      Parameters:
      sourcePattern - The regexp of files to create
      doPostProcessing - Whether or not we should perform external post-processing.
      commitTargetFiles - Whether or not we should commit target files
      Throws:
      Exception - If any error occurs during the compilation process.
    • isRemoteProject

      boolean isRemoteProject()
      Tells whether a project is a team project
      Returns:
      whether the project is a team project
    • commitSourceFiles

      void commitSourceFiles() throws Exception
      Commit source files in a team project.
      Throws:
      Exception - if any error occurs during the commit process
    • getProjectProperties

      ProjectProperties getProjectProperties()
      Get project properties.
      Returns:
      project properties
    • isProjectLoaded

      boolean isProjectLoaded()
      Get project loaded status.
      Returns:
      true if project loaded
    • isProjectModified

      boolean isProjectModified()
      Is project modified ?
    • getSourceTokenizer

      ITokenizer getSourceTokenizer()
      Returns tokenizer for source language.
    • getTargetTokenizer

      ITokenizer getTargetTokenizer()
      Returns tokenizer for target language.
    • getAllEntries

      List<SourceTextEntry> getAllEntries()
      Get all source segments. It's unmodifiable list, so, there is no need synchronization to read it.
    • setTranslation

      void setTranslation(SourceTextEntry entry, PrepareTMXEntry trans, boolean defaultTranslation, @Nullable TMXEntry.ExternalLinked externalLinked)
      Set translation for entry.

      Optimistic locking will not be checked.

      Parameters:
      entry - entry
      trans - translation. It can't be null
    • setTranslation

      void setTranslation(SourceTextEntry entry, PrepareTMXEntry trans, boolean defaultTranslation, TMXEntry.ExternalLinked externalLinked, IProject.AllTranslations previousTranslations) throws IProject.OptimisticLockingFail
      Set translation for entry with optimistic lock checking: if previous translation is not the same like in storage, OptimisticLockingFail exception will be generated. Use when user has typed a new translation.
      Parameters:
      entry - entry
      trans - translation. It can't be null
      Throws:
      IProject.OptimisticLockingFail
    • setNote

      void setNote(SourceTextEntry entry, TMXEntry oldTrans, String note)
      Change note only for translation.
      Parameters:
      entry - entry
      oldTrans - old translation
      note - note text
    • getStatistics

      StatisticsInfo getStatistics()
      Get statistics info.
    • getTranslationInfo

      TMXEntry getTranslationInfo(SourceTextEntry ste)
      Get translation info for specified entry. It looks first for multiple, then for default. This method ALWAYS returns TMXEntry, because note can exist even for non-translated segment. Use TMXEntry.isTranslated() for check if translation text really exist. Translation can be checked for default/alternative by the TMXEntry.defaultTranslation.
      Parameters:
      ste - source entry
      Returns:
      translation
    • getAllTranslations

      IProject.AllTranslations getAllTranslations(SourceTextEntry ste)
      Get default and alternative translations for optimistic locking.
    • iterateByDefaultTranslations

      void iterateByDefaultTranslations(IProject.DefaultTranslationsIterator it)
      Iterate by all default translations in project.
    • iterateByMultipleTranslations

      void iterateByMultipleTranslations(IProject.MultipleTranslationsIterator it)
      Iterate by all multiple translations in project.
    • isOrphaned

      boolean isOrphaned(String source)
      Check if orphaned.
    • isOrphaned

      boolean isOrphaned(EntryKey entry)
      Check if orphaned.
    • getTransMemories

      Map<String,ExternalTMX> getTransMemories()
      Get all translation memories from /tm/ folder.
      Returns:
      translation memories
    • getOtherTargetLanguageTMs

      Map<Language,ProjectTMX> getOtherTargetLanguageTMs()
      Get all translation memories from /other_lang/ folder.
      Returns:
      translation memories
    • getProjectFiles

      List<IProject.FileInfo> getProjectFiles()
      Get info about each source file in project. It's unmodifiable list, so, there is no need synchronization to read it.
    • getTargetPathForSourceFile

      String getTargetPathForSourceFile(String sourceFile)
      For a given source file, calculate the path of the target file that would be created by running Create Translated Documents (the file may not exist yet).

      The target path must be calculated because it can depend on project properties such as the target language, etc.

      Parameters:
      sourceFile - The relative path (under the source directory) of the source file, e.g. Bundle.properties
      Returns:
      The relative path (under the target directory) of the corresponding target file, e.g. Bundle_fr_FR.properties
    • getSourceFilesOrder

      List<String> getSourceFilesOrder()
      Get ordered list of source file names.
    • setSourceFilesOrder

      void setSourceFilesOrder(List<String> filesList)
      Set ordered list of source file names.