96e1d2f73f25b30ebcea017f4072b0120b88e4e2
[scpubgit/System-Introspector-Report.git] / lib / System / Introspector / Report / Publish / MediaWiki / HasConnectInfo.pm
1 package System::Introspector::Report::Publish::MediaWiki::HasConnectInfo;
2 use Moo::Role;
3
4 has connection_class    => (is => 'ro', lazy => 1, builder => 1);
5 has api_uri             => (is => 'ro', required => 1);
6 has username            => (is => 'ro', required => 1);
7 has password            => (is => 'ro', required => 1);
8 has http_auth           => (is => 'ro');
9 has http_realm          => (is => 'ro');
10
11 sub _build_connection_class {
12   'System::Introspector::Report::Publish::MediaWiki::Connection'
13 }
14
15 sub connect_info_pairs {
16   my ($self) = @_;
17   return map { ($_ => $self->$_) } qw(
18     api_uri
19     username
20     password
21     http_auth
22     http_realm
23     connection_class
24   );
25 }
26
27 1;