O objetivo deste guia é demonstrar o funcionamento do sistema de tradução de processos do Fluig.
Para gerar arquivos de literais para um novo diagrama, basta assinalar a opção "Cria os arquivos de literais" na tela apresentada a seguir:
Ao assinalar “Cria os arquivos de literais” são criados três arquivos properties, onde são armazenadas as literais nos idiomas suportados pelo fluig (inglês, português e espanhol), conforme imagem a seguir:
Estes arquivos são criados com três propriedades que são relacionadas às informações do processo:
Caso seja necessário o uso de novas variáveis, recomenda-se utilizar o " _ " underline como separador de propriedades, ao invés do ponto " . " a fim de garantir a exportação correta dos dados. |
Os campos categoria, descrição e instruções podem ser preenchidos normalmente na modelagem do processo, sem a necessidade de nenhuma técnica especial de tradução.
Contudo, essas informações preenchidas são utilizadas apenas nos momentos de importação, exportação e modelagem de processos. Para abertura e movimentação de processos são utilizadas as strings dos arquivos de literais. Portanto, a alteração destas propriedades deve ser realizada diretamente nos arquivos de literais (através do fluig Studio) e em seguida exportados para o servidor fluig.
Essas categorias são internas e não podem ser utilizadas em outros pontos do processo. |
Para projetos mais antigos, a pasta “literals” é criada automaticamente, tanto na criação de novos diagramas quanto na importação de processos com literais definidas. Para projetos e diagramas antigos, a pasta e os arquivos de propriedades podem ser criados utilizando as opções "New Folder" e "New File" do Eclipse, que também estão disponíveis no menu de contexto de mouse do Fluig.
Os arquivos de literais criados desta forma devem seguir a seguinte convenção:
(Nome do diagrama) + “_en_US.properties” ou “_es.properties” ou “_pt_BR.properties”.
Obrigatoriamente os três arquivos devem ser criados para que o processo seja exportado. Todos os arquivos devem conter as três variáveis básicas citadas acima além de todas as variáveis criadas em outros pontos do processo.
Para traduzir informações das atividades, devem ser criadas literais utilizando a seguinte semântica:
(código da atividade) + "." + campo a ser traduzido = "string desejada”.
Onde:
Código da atividade: pode ser obtido verificando as propriedades de cada elemento do diagrama, conforme imagem a seguir:
Campo a ser traduzido: é o que se deseja traduzir. O campo "name" representa o nome e o campo "instructions" representa as instruções dele.
Nesta linha, ao traduzir a atividade com o código "task6" o arquivo de literal terá a seguinte atividade:
Para fluxos, além da propriedade "name", podem ser utilizadas mais duas propriedades:
Em alguns casos, as strings de tradução podem ficar muito longas ultrapassando o tamanho dos objetos que contém estas strings, conforme o exemplo abaixo:
Note na imagem acima que a string "Solicitação workflow inicia nesta tarefa" está ultrapassando o espaço definido para o objeto de anotação.
Para evitar este problema o desenvolvedor de processos poderá utilizar o caractere "\n" para realização da quebra de linhas, evitando esta situação.
// Implementação que apresenta o problema (sem o \n) 7.name=Solicitação workflow inicia nesta tarefa // Implementação corrigida. 7.name=Solicitação workflow \n inicia nesta tarefa |
Após aplicar o caractere de quebra de linha, o problema será corrigido conforme pode ser observado na imagem abaixo.
Visando algumas melhorias na performance de consultas e central de tarefas, foi aprimorado o procedimento de tradução de processos.
A princípio nada mudará para o usuário final, porém o desenvolvedor poderá notar algumas diferenças ao importar o processo, sendo elas, a ordem da literal importada, que pode estar diferente da que foi exportada, pois alteramos a forma como manipulamos essa informação e em casos de unicode para acentuação, que também serão perdidos.
Por este motivo, é necessário fazer uma alteração na configuração do Studio em Preferences (Preferências) pesquise por Content Types (Tipos de conteúdo), Text (Texto), Java properties file (Arquivo de propriedade Java) e altere de ISO-8859-1 para UTF-8.