Ir para o conteúdo

 Voltar a MDArte Desen...
Tela cheia

Geração do atributo Id

14 de Dezembro de 2010, 14:51 , por Desconhecido - | Ninguém seguindo este artigo por enquanto.
Visualizado 12 vezes

Olá pessoal.

Como sabemos, toda entidade definida com estereótipo <<Entity>> será gerada com um atributo "id", além de seus métodos get e set.

Mas olhando o código, por exemplo "EntityTOInterface.vsl", é possível verificar que esse atributo "id" foi previamente inserido no nível de metafacade, visto que a template apenas recebe a coleção de atributos, sem conhecimento específico sobre quais atributos estão nessa coleção.

Alguém sabe o ponto específico onde o atributo "id" é adicionado a coleção? Achei apenas o "org.andromda.metafacades.uml.ClassifierFacade#getAttributes".

Obrigado.



 

 

Autor: Roque Pinel


33 comentários

  • 34655434f63d3540267c6d9d4acaaac3?only path=false&size=50&d=404Erich Oliveira(usuário não autenticado)
    14 de Dezembro de 2010, 15:50

     

    Depois de muita procura, acho que encontrei...

     

    No método initialize da classe EntityLogicImpl ele chama um método da própria classe chamado createIdentifier, este createIdentifier adiciona um atributo identificador através de um getFeature().add(), este getFeature() é então lido pelos metafacades como o método que retorna os atributos de uma classe...

     

    Espero que tenha dado pra entender... e espero estar certo tbm, não tenho como testar aqui (remover o createIdentifier do initialize do EntityLogicImpl) eu só olhei o código e encontrei isso.

     

     

    Abraços,

    Erich Oliveira

    • Bb0d54eb9311d61feb3e8ba4b597ea71?only path=false&size=50&d=404Roque Pinel(usuário não autenticado)
      14 de Dezembro de 2010, 16:00

       

      Isso mesmo Eric, fica no initialize. Meu caminho terminava no getFeature(), agora faz sentido a atributo id já estar na coleção.

      Obrigado pela ajuda.

  • 34655434f63d3540267c6d9d4acaaac3?only path=false&size=50&d=404Erich Oliveira(usuário não autenticado)
    14 de Dezembro de 2010, 16:00

     

    Acrescentando que realmente parece ser isso, quando ele executa o createIdentifier ele tenta criar um identificador utilizando a propriedade defaultIdentifierPattern, esta propriedade se encontra em metafacades/uml/common/src/META-INF/andromda/namespace.xml. Ao abrí-lo vemos o valor default e documentação dele...

     

    <property name="defaultIdentifierPattern">
                    <default>id</default>
                    <documentation>
                        The pattern used to construct the default identifier name of an entity, where <em>{0}</em>
                        represents the name of the entity as lower camel case (i.e. if <code>defaultIdentifierPattern</code>
                        had a value of <em>{0}Id</em>, then the resulting identifier of a an Entity named PersonName would
                        be <em>personNameId</em>).
                    </documentation>
                </property>
                <property name="defaultIdentifierType">
                    <default>datatype::Long</default>
                    <documentation>
                        The type to give default identifiers.
                    </documentation>
                </property>
                <property name="defaultIdentifierVisibility">
                    <default>public</default>
                    <documentation>
                        The visibility to give default identifiers.
                    </documentation>
                </property>

Checklist para o projeto de interfaces

14 de Dezembro de 2011, 16:00, por Desconhecido

Este é um roteiro básico para verificação dos elementos interface para desenharmos um projeto. Vale lembrar que os projetos do MDArte são basicamente em CRUD (Create, Retrieve, Update e Delete) e não sistemas CMS com outras divisões e exibições. Cada um pode ter a sua lista e seria legal enviar comentários com adendos para ficar cada vez mais completa e padronizada.



Monthly archive for agosto 2010 CSS, Plugins, jQuery Flexigrid – Tabelas inteligentes com CSS e jQuery

14 de Dezembro de 2011, 15:46, por Desconhecido

Essa semana aqui no projeto, estávamos procurando uma solução para algumas tabelas que extrapolavam o tamanho da



Auto-Grid 960

14 de Dezembro de 2011, 15:41, por Desconhecido

Essa dica vai pra quem não tem muita paciência de configurar um js de grid 960 direto no seu código para ver o alinhamento de seus elementos.



Título na tabela do displayTag

14 de Dezembro de 2011, 15:39, por Desconhecido

O MDArte utiliza o displayTag e é possível customiza-lo de diversas maneiras. Uma coisa legal é colocar um título que só será exibido quando a consulta for executada.



CSS3:Textos com sombras

14 de Dezembro de 2011, 15:12, por Desconhecido

Se voce aplicar a propriedade “box-shadow” em um texto, a mesma vai ser aplicada em sua caixa (box). Para isso foi criada a propriedade “text-shadow”.
Seu uso é o seguinte: