Eu não sei exatamente o problema que você precisa resolver, se você ficou incomodado com a resposta da próxima vez você guarda a pergunta pra vc.
Sent from my iPhone On 03/09/2013, at 12:53, Solli Honorio <shono...@gmail.com> wrote: > Ou pena que vc não é engenheiro aeroespacial :D !!!! > > > Em 3 de setembro de 2013 12:50, Solli Honorio <shono...@gmail.com> escreveu: >> Caramba Mantovani, isto sim é 'over engineering' ! Onde vc viu a necessidade >> de um AMPQ para eu validar um campo e emitir uma mensagem personalizada ? >> >> Eu aqui pensando se deveria utilizar a técnica de 'Dispatch Table' ou o >> Data::Verifier, e vc encontra aí uma oportunidade de AMPQ ? Ainda bem que >> você não é engenheiro aeroespacial :D !!! >> >> Abraços, >> >> Solli Honorio >> >> >> Em 3 de setembro de 2013 12:30, Daniel de Oliveira Mantovani >> <daniel.oliveira.mantov...@gmail.com> escreveu: >> >>> Shonorio, porque você não usa uma implementação do AMPQ? >>> >>> Topic Exchange se encaixa perfeitamente, mesmo que ambos cliente e >>> servidor rodem na mesma máquina. >>> http://www.rabbitmq.com/tutorials/amqp-concepts.html >>> >>> 2013/9/3 Solli Honorio <shono...@gmail.com>: >>> > Lucas, >>> > >>> > Obrigado pelo retorno. Ontem a noite estudei o código do Data::Manager e >>> > ví >>> > que realmente não rola fazer o que eu estava querendo fazer (passar uma >>> > pilha de mensagem e receber de acordo com o contexto) e ai estou >>> > encaminhando para a mesma solução que você. >>> > >>> > Como vc faz com o I18N ? >>> > >>> > O Renato Cron publicou um 'template' ( https://github.com/AwareTI/MyApp ) >>> > de como eles estão utilizando o Data::Manager. Estudei o código e achei >>> > engenhoso, mas ainda quero manter um melhor controle do ResultSet porquê >>> > quero devolver uma estrutura mais complexa de informação. >>> > >>> > Abraços, >>> > >>> > Solli Honorio >>> > >>> > >>> > >>> > 2013/9/3 Lucas Oliveira <lucasmateus.olive...@gmail.com> >>> >> >>> >> >>> >> Normalmente eu uso sempre com I18N mas da pra quebrar o galho assim >>> >> >>> >> <code> >>> >> #!/usr/bin/env perl >>> >> >>> >> use common::sense; >>> >> use Data::Manager; >>> >> use Data::Verifier; >>> >> >>> >> my %msg_data = ( >>> >> missing_name_last => 'Nao foi informado o campo name_last, seu idiota >>> >> !', >>> >> ); >>> >> >>> >> sub messages { $msg_data{$_[0]} || $_[0] } >>> >> >>> >> my $dm = Data::Manager->new; >>> >> my $dv = Data::Verifier->new( >>> >> filters => [ qw(trim) ], >>> >> profile => { >>> >> name_first => { >>> >> required => 1, >>> >> type => 'Str', >>> >> filters => [ qw(collapse) ] >>> >> }, >>> >> name_last => { >>> >> required => 1, >>> >> type => 'Str', >>> >> filters => [ qw(collapse) ] >>> >> }, >>> >> age => { >>> >> type => 'Int' >>> >> }, >>> >> sign => { >>> >> required => 1, >>> >> type => 'Str' >>> >> } >>> >> } >>> >> ); >>> >> >>> >> $dm->set_verifier( name => $dv ); >>> >> $dm->verify( name => { name_first => 'Solli' }); >>> >> >>> >> if (!$dm->success) { >>> >> print &messages( $_->msgid ).$/ >>> >> foreach (@{ $dm->messages->messages }); >>> >> } >>> >> </code> >>> >> >>> >> >>> >> Em 02/09/2013, às 11:10, Solli Honorio <shono...@gmail.com> escreveu: >>> >> >>> >> Pessoal, >>> >> >>> >> Estou tentando configurar uma mensagem padronização no Data::Manager, mas >>> >> não está funcionando. Alguém aqui já utilizou o Data::Manager para saber >>> >> se >>> >> é possível fazer isto que eu quero ? >>> >> >>> >> O código abaixo, estou criando uma mensagem e adicionando no >>> >> Data::Manger, >>> >> porquê eu imaginei que quando ocorrer o problema dentro do escopo e >>> >> msgid, >>> >> eu teria o texto padronizado, mas o que estou recebendo é mais uma pilha >>> >> de >>> >> mensagem, mesmo quando não existe o erro. >>> >> >>> >> <code> >>> >> #!/usr/bin/env perl >>> >> use common::sense; >>> >> use Data::Manager; >>> >> use Data::Verifier; >>> >> use Data::Printer; >>> >> >>> >> my $msg = Message::Stack->new; >>> >> $msg->add({ >>> >> msgid => 'missing_name_last', >>> >> level => 'error', >>> >> scope => 'name1', >>> >> subject => 'name_last', >>> >> text => 'Não foi informado o campo name_last, seu idiota !'} ); >>> >> >>> >> my $dm = Data::Manager->new( { messages => $msg } ); >>> >> my $dv = Data::Verifier->new( >>> >> filters => [ qw(trim) ], >>> >> profile => { >>> >> name => { >>> >> required => 1, >>> >> type => 'Str', >>> >> filters => [ qw(collapse) ] >>> >> }, >>> >> age => { >>> >> type => 'Int' >>> >> }, >>> >> sign => { >>> >> required => 1, >>> >> type => 'Str' >>> >> } >>> >> } >>> >> ); >>> >> >>> >> >>> >> }; >>> >> >>> >> >>> >> $dm->set_verifier('name1', $verifier); >>> >> $dm->verify('name1', { name_last => 'Honorio', name_first => 'Solli' }); >>> >> >>> >> my $results = $dm->get_results('name1'); >>> >> my $stack = $dm->messages_for_scope('name1'); >>> >> >>> >> say $results->success; >>> >> >>> >> say "Is invalid name_first ", $results->is_invalid('name_first'); >>> >> say "Is invalid name_last ", $results->is_invalid('name_last'); # yes >>> >> >>> >> say "Is missing name_first ", $results->is_missing('name_first'); # no >>> >> say "Is missing is_missing ", $results->is_missing('name_last'); # yes >>> >> >>> >> say "Missing count ", $results->missing_count; >>> >> >>> >> say "Count : ", $stack->count ; >>> >> p $stack->get_message( 0 ); >>> >> p $stack->get_message( 1 ); >>> >> >>> >> </code> >>> >> >>> >> >>> >> -- >>> >> "o animal satisfeito dorme". - Guimarães Rosa >>> >> =begin disclaimer >>> >> Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ >>> >> SaoPaulo-pm mailing list: SaoPaulo-pm@pm.org >>> >> L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> >>> >> =end disclaimer >>> >> >>> >> >>> >> >>> >> =begin disclaimer >>> >> Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ >>> >> SaoPaulo-pm mailing list: SaoPaulo-pm@pm.org >>> >> L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> >>> >> =end disclaimer >>> >> >>> > >>> > >>> > >>> > -- >>> > "o animal satisfeito dorme". - Guimarães Rosa >>> > >>> > =begin disclaimer >>> > Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ >>> > SaoPaulo-pm mailing list: SaoPaulo-pm@pm.org >>> > L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> >>> > =end disclaimer >>> > >>> >>> >>> >>> -- >>> >>> -dom >>> >>> -- >>> >>> Daniel de Oliveira Mantovani >>> Business Analytic Specialist >>> Perl Evangelist /Astrophysics hobbyist. >>> +55 11 9 8538-9897 >>> XOXO >>> =begin disclaimer >>> Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ >>> SaoPaulo-pm mailing list: SaoPaulo-pm@pm.org >>> L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> >>> =end disclaimer >> >> >> >> >> -- >> "o animal satisfeito dorme". - Guimarães Rosa > > > > -- > "o animal satisfeito dorme". - Guimarães Rosa > =begin disclaimer > Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ > SaoPaulo-pm mailing list: SaoPaulo-pm@pm.org > L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> > =end disclaimer
=begin disclaimer Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ SaoPaulo-pm mailing list: SaoPaulo-pm@pm.org L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> =end disclaimer