Changeset 10581 for lang/perl/Punc/trunk
- Timestamp:
- 04/27/08 18:47:27 (7 months ago)
- Location:
- lang/perl/Punc/trunk/lib/Punc
- Files:
-
- 2 modified
-
Client.pm (modified) (2 diffs)
-
Client/Request.pm (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
lang/perl/Punc/trunk/lib/Punc/Client.pm
r10463 r10581 5 5 our $VERSION = '0.01'; 6 6 our $AUTOLOAD; 7 use Punc::ConfigLoader; 7 8 use Punc::Client::Request; 8 9 use UNIVERSAL::require; 9 10 use FindBin; 11 use UNIVERSAL::require; 10 12 11 13 sub new { 12 14 my ( $class, $target ) = @_; 13 15 16 $target =~ s/\*/\.\*/g; 17 14 18 ### TODO: confdir のデフォルト値を変更 15 ## TODO: $target から対象ホストをリストアップ 19 my $confdir = "$FindBin::Bin/../etc"; 20 my $yaml = File::Spec->catfile($confdir, 'punc.yaml'); 21 my $conf = -f $yaml ? Punc::ConfigLoader->new->load($yaml) : {}; 22 $conf->{confdir} = $confdir; 23 24 my $hosts_class = ucfirst $conf->{hosts_class} || 'File'; 25 $hosts_class = "Punc::Hosts::$hosts_class"; 26 $hosts_class->require; 27 my $hosts = $hosts_class->get_hosts({ target => $target, conf => $conf }); 16 28 17 29 bless { 18 hosts => [ $target ],19 conf dir => "$FindBin::Bin/../etc",30 hosts => $hosts, 31 conf => $conf, 20 32 }, $class; 21 33 } … … 28 40 29 41 return Punc::Client::Request->new({ 30 conf dir => $self->{confdir},31 hosts => $self->{hosts},32 module => $module,42 conf => $self->{conf}, 43 hosts => $self->{hosts}, 44 module => $module, 33 45 }); 34 46 } -
lang/perl/Punc/trunk/lib/Punc/Client/Request.pm
r10463 r10581 13 13 my ( $class, $args ) = @_; 14 14 15 my $confdir = $args->{conf}->{confdir}; 16 15 17 $ENV{HTTPS_VERSION} = 3; 16 18 $ENV{HTTPS_CERT_FILE} = File::Spec->catfile( 17 $ args->{confdir}, 'ssl', 'ca', 'ca.cert'19 $confdir, 'ssl', 'ca', 'ca.cert' 18 20 ); 19 21 $ENV{HTTPS_KEY_FILE} = File::Spec->catfile( 20 $ args->{confdir}, 'ssl', 'ca', 'ca.key'22 $confdir, 'ssl', 'ca', 'ca.key' 21 23 ); 22 24 … … 32 34 for my $host ( @{ $self->{hosts} } ) { 33 35 34 my $url = "https://$host:7080/$self->{module}";36 my $url = "https://$host:7080/$self->{module}"; 35 37 my $callobj = { 36 38 method => $self->{method}, … … 38 40 }; 39 41 40 my $res = $self->{client}->call($url, $callobj) ;42 my $res = $self->{client}->call($url, $callobj) or warn @?; 41 43 42 44 if( $res ) {
![(please configure the [header_logo] section in trac.ini)](/share/chrome/site/your_project_logo.png)