[Cascavel-pm] Teste de variável na inicialização de um módulo.
Daniel R. Antunes
danielrantunes em yahoo.com.br
Terça Junho 20 03:10:54 PDT 2006
Olá amigos, muito obrigado pelas postagens de ajuda...
Eu testei com uma variável de ambiente usando $ENV, como sugerido
pelo amigo Igor, mas não rolou tbem... Da forma sugerida pelo amigo
Marco funcionou, porém, setada no objeto "Inq" que é o objeto principal;
ficou muito bom, pq centralizei todas as informações dos servidores na
inicialização deste objeto.
Abraço...
Marco A P D'Andrade wrote:
>Ou...
>
>Que tal vc acionar uma configuração apropriada quanto for opção "-t" ??
>
>#main.pl
>...
>if ($TEST){
> G::AssignTest();
>} else{
> G::Assign();
>}
>...
>
>
>package modules::G;
>
>sub AssignTest {
> $gsubmission_url='http://url/de/testes';
> $gretrieval_url='http://url/de/testes/RetrieveListenerServlet';
> $glogin='LOGIN';
> $gpass='PASS';
>}
>
>sub Assign {
> $gsubmission_url='http://url/live';
> $gretrieval_url='http://url/live/RetrieveListenerServlet';
> $glogin='LOGIN_OFICIAL';
> $gpass='SENHA_OFICIAL';
>}
>#---
>
>Não tenho conhecimento conceitual suficiente para afirmar com certeza,
>mas acho que caberia ao modulo principal definir o comportamento do
>modulo (ou classe) inicializada...
>
>Com um comportamento variavel de acordo com uma variavel global vc
>eleva o acoplamento por variaveis globais ...
>
>Claro... outra opção, que eu possivelmente utilizaria é chamar um
>modulo de inicialização, passando os parametros (não default), do
>tipo:
>
>
> if ( $test ) {
> G::Init( submit => 'http://url/de/testes', ... );
> }
>
>package modules::G;
>
>our ( $gsubmission_url, $gretrieval_url, $glogin, $gpass );
>
>
>sub Init {
> my %args = @_;
> $gsubmission_url='http://url/live';
> $gretrieval_url='http://url/live/RetrieveListenerServlet';
> $glogin='LOGIN_OFICIAL';
> $gpass='SENHA_OFICIAL';
> if ( exists($args{submit}) ) {
> $gsubmission_url=$args{submit};
> }
>
> ...
>
>}
>
>2006/6/16, Igor Sutton <igor.sutton em gmail.com>:
>
>
>>E se você utilizar uma variável de ambiente?
>>
>> $ TEST=1 perl -e 'print
>>(($ENV{TEST})?"TESTE!":"PRODUÇÃO"); print "\n"'
>>
>> Você pode encapsular este teste dentro da função que gera os dados deste
>>conector, por exemplo. Mas seguindo a sua linha de raciocínio:
>>
>>
>>
>--- cut ---
>_______________________________________________
>Cascavel-pm mailing list
>Cascavel-pm em pm.org
>http://mail.pm.org/mailman/listinfo/cascavel-pm
>
>
>
--
|---------------------------------------------.---.-\
| Daniel R. Antunes (Profiss. de informática) )\-/( |
| ...... www.daniel-antunes.com.br (Web Site) (OvO) |
| ... danielrantunes em sorria.com.br (M$Nmsger) (( )) |
|~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"~"~~|
| ICQº 107888741 ~ GNU/Linuxº 238553 ~ GotNiX 'ÜÜÜ' |
\---------------------------------------------------|
_______________________________________________________
Yahoo! doce lar. Faça do Yahoo! sua homepage.
http://br.yahoo.com/homepageset.html
Mais detalhes sobre a lista de discussão Cascavel-pm