Hook personnalisé permettant de préremplir les langues cibles de traduction
La propriété PrePopulateTargetLanguagesHook permet de préremplir une liste de langues cibles dans la boîte de dialogue Créer un lot de traduction.
L'ensemble de langues qui est retourné à partir du hook doit être autorisé pour l'objet racine du lot de traduction.
Par exemple, si une langue est retournée, mais que l'utilisateur ne dispose pas de rôle dans la bibliothèque correspondant à cette langue, celle-ci est indiquée barrée dans la liste Langues cibles disponibles et n'est pas préremplie dans la liste Langues cibles sélectionnées.
De même, si la langue cible n'est pas valide ou ne figure pas dans la préférence Langues prises en charge, la langue cible non valide n'est pas préremplie dans la liste Langues cibles sélectionnées. Un message d'erreur s'affiche pour la langue non valide dans le serveur de méthodes.
La combinaison des langues cibles disponibles et sélectionnées renseignées dans Créer un lot de traduction peut être remaniée manuellement pour répondre à vos besoins de traduction.
Pour implémenter ce hook, vous devez spécifier son nom dans la propriété PrePopulateTargetLanguagesHook.
Interface
package com.ptc.tml.validation;
import java.util.Set;
import wt.fc.Persistable;
import wt.util.WTException;
/**
* This interface provides a way to preselect the target languages to be displayed under
* 'Selected Target Languages' section in Create translation package dialog.
*
* <BR>
* <BR>
* <B>Supported API: </B>true <BR>
* <BR>
* <B>Extendable: </B>false
*/
public interface PrePopulateTargetLanguagesHook {
public Set<String> getSelectedTargetLanguageCodes(Persistable p) throws WTException;
}
Consultez également le fichier SamplePrePopulateTargetLanguagesHookImpl.java qui est un exemple d'implémentation fourni pour référence.
/**
* Sample implementation for the {@link PrePopulateTargetLanguagesHook}.
* There are 3 valid language codes 'ar', 'bg' and 'cs' mentioned and one language code 'pg' is invalid code.
*/
public class SamplePrePopulateTargetLanguagesHookImpl implements PrePopulateTargetLanguagesHook{

@Override
public Set<String> getSelectedTargetLanguageCodes(Persistable p) {
Set<String> result = new HashSet<>();
result.add("ar");
result.add("bg");
result.add("cs");
result.add("pg");
return result;
}
}
Registre
1. L'utilitaire xconfmanager permet de modifier translation.service.properties.xconf. Vous pouvez également l'enregistrer dans le fichier components.service.properties figurant à l'emplacement suivant : <Windchill>/codebase/com/ptc/core/components.
Pour plus d'informations sur l'utilitaire xconfmanager, consultez la rubrique "Utilisation de l'utilitaire xconfmanager" dans le Centre d'aide Windchill.
2. Ajoutez la propriété suivante :
<Service context="default"
name="com.ptc.tml.validation.PrePopulateTargetLanguagesHook">
<Option requestor="java.lang.Object"
serviceClass="com.ptc.tml.sample.YourSamplePrePopulateTargetLanguagesHookImplClassName"
selector="null"/>
</Service>
3. Enregistrez le fichier.
4. Propagez vos modifications à l'aide de l'utilitaire xconfmanager. A partir du répertoire <Windchill>\bin, entrez la commande suivante :
xconfmanager -pF
5. Redémarrez le serveur de méthodes.
Est-ce que cela a été utile ?