TT#28460 Adapt PreferenceDefs APIs to new parent

Change-Id: Ib19e2026632eb4bfe18f9ce42781a1a8bd8483a8
changes/98/18298/14
Irina Peshinskaya 7 years ago
parent 92e6215b71
commit 1e2f06992a

@ -1,88 +1,19 @@
package NGCP::Panel::Controller::API::CustomerPreferenceDefs; package NGCP::Panel::Controller::API::CustomerPreferenceDefs;
use NGCP::Panel::Utils::Generic qw(:all);
use Sipwise::Base; use Sipwise::Base;
use boolean qw(true); use parent qw/NGCP::Panel::Role::EntityPreferenceDefs NGCP::Panel::Role::API/;
use Data::HAL qw();
use Data::HAL::Link qw();
use HTTP::Headers qw();
use HTTP::Status qw(:constants);
use NGCP::Panel::Utils::Preferences; use NGCP::Panel::Utils::Preferences;
use JSON::Types qw();
require Catalyst::ActionRole::ACL;
require Catalyst::ActionRole::CheckTrailingSlash;
require NGCP::Panel::Role::HTTPMethods;
require Catalyst::ActionRole::RequireSSL;
sub allowed_methods{ sub allowed_methods{
return [qw/GET OPTIONS HEAD/]; return [qw/GET OPTIONS HEAD/];
} }
use parent qw/NGCP::Panel::Role::Entities/; __PACKAGE__->set_config({
preferences_group => 'contract_pref',
sub resource_name{ allowed_roles => [qw/admin reseller/],
return 'customerpreferencedefs'; });
}
sub dispatch_path{
return '/api/customerpreferencedefs/';
}
sub relation{
return 'http://purl.org/sipwise/ngcp-api/#rel-customerpreferencedefs';
}
__PACKAGE__->config(
action => {
map { $_ => {
ACLDetachTo => '/api/root/invalid_user',
AllowedRole => [qw/admin reseller/],
Args => 0,
Does => [qw(ACL CheckTrailingSlash RequireSSL)],
Method => $_,
Path => __PACKAGE__->dispatch_path,
} } @{ __PACKAGE__->allowed_methods }
},
);
sub GET :Allow {
my ($self, $c) = @_;
{
my @links;
push @links,
Data::HAL::Link->new(
relation => 'curies',
href => 'http://purl.org/sipwise/ngcp-api/#rel-{rel}',
name => 'ngcp',
templated => true,
),
Data::HAL::Link->new(relation => 'profile', href => 'http://purl.org/sipwise/ngcp-api/'),
Data::HAL::Link->new(relation => 'self', href => sprintf('%s', $self->dispatch_path));
my $hal = Data::HAL->new(
links => [@links],
);
my $resource = NGCP::Panel::Utils::Preferences::api_preferences_defs( c => $c, preferences_group => 'contract_pref' );
$hal->resource($resource);
my $response = HTTP::Response->new(HTTP_OK, undef,
HTTP::Headers->new($hal->http_headers(skip_links => 1)), $hal->as_json);
$c->response->headers($response->headers);
$c->response->body($response->content);
return;
}
return;
}
1; 1;

@ -1,88 +1,19 @@
package NGCP::Panel::Controller::API::DomainPreferenceDefs; package NGCP::Panel::Controller::API::DomainPreferenceDefs;
use NGCP::Panel::Utils::Generic qw(:all);
use Sipwise::Base; use Sipwise::Base;
use boolean qw(true); use parent qw/NGCP::Panel::Role::EntityPreferenceDefs NGCP::Panel::Role::API/;
use Data::HAL qw();
use Data::HAL::Link qw();
use HTTP::Headers qw();
use HTTP::Status qw(:constants);
use NGCP::Panel::Utils::Preferences; use NGCP::Panel::Utils::Preferences;
use JSON::Types qw();
require Catalyst::ActionRole::ACL;
require Catalyst::ActionRole::CheckTrailingSlash;
require NGCP::Panel::Role::HTTPMethods;
require Catalyst::ActionRole::RequireSSL;
sub allowed_methods{ sub allowed_methods{
return [qw/GET OPTIONS HEAD/]; return [qw/GET OPTIONS HEAD/];
} }
use parent qw/NGCP::Panel::Role::Entities/; __PACKAGE__->set_config({
preferences_group => 'dom_pref',
sub resource_name{ allowed_roles => [qw/admin reseller/],
return 'domainpreferencedefs'; });
}
sub dispatch_path{
return '/api/domainpreferencedefs/';
}
sub relation{
return 'http://purl.org/sipwise/ngcp-api/#rel-domainpreferencedefs';
}
__PACKAGE__->config(
action => {
map { $_ => {
ACLDetachTo => '/api/root/invalid_user',
AllowedRole => [qw/admin reseller/],
Args => 0,
Does => [qw(ACL CheckTrailingSlash RequireSSL)],
Method => $_,
Path => __PACKAGE__->dispatch_path,
} } @{ __PACKAGE__->allowed_methods }
},
);
sub GET :Allow {
my ($self, $c) = @_;
{
my @links;
push @links,
Data::HAL::Link->new(
relation => 'curies',
href => 'http://purl.org/sipwise/ngcp-api/#rel-{rel}',
name => 'ngcp',
templated => true,
),
Data::HAL::Link->new(relation => 'profile', href => 'http://purl.org/sipwise/ngcp-api/'),
Data::HAL::Link->new(relation => 'self', href => sprintf('%s', $self->dispatch_path));
my $hal = Data::HAL->new(
links => [@links],
);
my $resource = NGCP::Panel::Utils::Preferences::api_preferences_defs( c => $c, preferences_group => 'dom_pref' );
$hal->resource($resource);
my $response = HTTP::Response->new(HTTP_OK, undef,
HTTP::Headers->new($hal->http_headers(skip_links => 1)), $hal->as_json);
$c->response->headers($response->headers);
$c->response->body($response->content);
return;
}
return;
}
1; 1;

@ -1,88 +1,19 @@
package NGCP::Panel::Controller::API::PbxDevicePreferenceDefs; package NGCP::Panel::Controller::API::PbxDevicePreferenceDefs;
use NGCP::Panel::Utils::Generic qw(:all);
use Sipwise::Base; use Sipwise::Base;
use boolean qw(true); use parent qw/NGCP::Panel::Role::EntityPreferenceDefs NGCP::Panel::Role::API/;
use Data::HAL qw();
use Data::HAL::Link qw();
use HTTP::Headers qw();
use HTTP::Status qw(:constants);
use NGCP::Panel::Utils::Preferences; use NGCP::Panel::Utils::Preferences;
use JSON::Types qw();
require Catalyst::ActionRole::ACL;
require Catalyst::ActionRole::CheckTrailingSlash;
require NGCP::Panel::Role::HTTPMethods;
require Catalyst::ActionRole::RequireSSL;
sub allowed_methods{ sub allowed_methods{
return [qw/GET OPTIONS HEAD/]; return [qw/GET OPTIONS HEAD/];
} }
use parent qw/NGCP::Panel::Role::Entities/; __PACKAGE__->set_config({
preferences_group => 'dev_pref',
sub resource_name{ allowed_roles => [qw/admin reseller/],
return 'pbxdevicepreferencedefs'; });
}
sub dispatch_path{
return '/api/pbxdevicepreferencedefs/';
}
sub relation{
return 'http://purl.org/sipwise/ngcp-api/#rel-pbxdevicepreferencedefs';
}
__PACKAGE__->config(
action => {
map { $_ => {
ACLDetachTo => '/api/root/invalid_user',
AllowedRole => [qw/admin reseller/],
Args => 0,
Does => [qw(ACL CheckTrailingSlash RequireSSL)],
Method => $_,
Path => __PACKAGE__->dispatch_path,
} } @{ __PACKAGE__->allowed_methods }
},
);
sub GET :Allow {
my ($self, $c) = @_;
{
my @links;
push @links,
Data::HAL::Link->new(
relation => 'curies',
href => 'http://purl.org/sipwise/ngcp-api/#rel-{rel}',
name => 'ngcp',
templated => true,
),
Data::HAL::Link->new(relation => 'profile', href => 'http://purl.org/sipwise/ngcp-api/'),
Data::HAL::Link->new(relation => 'self', href => sprintf('%s', $self->dispatch_path));
my $hal = Data::HAL->new(
links => [@links],
);
my $resource = NGCP::Panel::Utils::Preferences::api_preferences_defs( c => $c, preferences_group => 'dev_pref' );
$hal->resource($resource);
my $response = HTTP::Response->new(HTTP_OK, undef,
HTTP::Headers->new($hal->http_headers(skip_links => 1)), $hal->as_json);
$c->response->headers($response->headers);
$c->response->body($response->content);
return;
}
return;
}
1; 1;

@ -1,88 +1,19 @@
package NGCP::Panel::Controller::API::PbxDeviceProfilePreferenceDefs; package NGCP::Panel::Controller::API::PbxDeviceProfilePreferenceDefs;
use NGCP::Panel::Utils::Generic qw(:all);
use Sipwise::Base; use Sipwise::Base;
use boolean qw(true); use parent qw/NGCP::Panel::Role::EntityPreferenceDefs NGCP::Panel::Role::API/;
use Data::HAL qw();
use Data::HAL::Link qw();
use HTTP::Headers qw();
use HTTP::Status qw(:constants);
use NGCP::Panel::Utils::Preferences; use NGCP::Panel::Utils::Preferences;
use JSON::Types qw();
require Catalyst::ActionRole::ACL;
require Catalyst::ActionRole::CheckTrailingSlash;
require NGCP::Panel::Role::HTTPMethods;
require Catalyst::ActionRole::RequireSSL;
sub allowed_methods{ sub allowed_methods{
return [qw/GET OPTIONS HEAD/]; return [qw/GET OPTIONS HEAD/];
} }
use parent qw/NGCP::Panel::Role::Entities/; __PACKAGE__->set_config({
preferences_group => 'devprof_pref',
sub resource_name{ allowed_roles => [qw/admin reseller/],
return 'pbxdeviceprofilepreferencedefs'; });
}
sub dispatch_path{
return '/api/pbxdeviceprofilepreferencedefs/';
}
sub relation{
return 'http://purl.org/sipwise/ngcp-api/#rel-pbxdeviceprofilepreferencedefs';
}
__PACKAGE__->config(
action => {
map { $_ => {
ACLDetachTo => '/api/root/invalid_user',
AllowedRole => [qw/admin reseller/],
Args => 0,
Does => [qw(ACL CheckTrailingSlash RequireSSL)],
Method => $_,
Path => __PACKAGE__->dispatch_path,
} } @{ __PACKAGE__->allowed_methods }
},
);
sub GET :Allow {
my ($self, $c) = @_;
{
my @links;
push @links,
Data::HAL::Link->new(
relation => 'curies',
href => 'http://purl.org/sipwise/ngcp-api/#rel-{rel}',
name => 'ngcp',
templated => true,
),
Data::HAL::Link->new(relation => 'profile', href => 'http://purl.org/sipwise/ngcp-api/'),
Data::HAL::Link->new(relation => 'self', href => sprintf('%s', $self->dispatch_path));
my $hal = Data::HAL->new(
links => [@links],
);
my $resource = NGCP::Panel::Utils::Preferences::api_preferences_defs( c => $c, preferences_group => 'dev_pref' );
$hal->resource($resource);
my $response = HTTP::Response->new(HTTP_OK, undef,
HTTP::Headers->new($hal->http_headers(skip_links => 1)), $hal->as_json);
$c->response->headers($response->headers);
$c->response->body($response->content);
return;
}
return;
}
1; 1;

@ -1,88 +1,19 @@
package NGCP::Panel::Controller::API::PeeringServerPreferenceDefs; package NGCP::Panel::Controller::API::PeeringServerPreferenceDefs;
use NGCP::Panel::Utils::Generic qw(:all);
use Sipwise::Base; use Sipwise::Base;
use boolean qw(true); use parent qw/NGCP::Panel::Role::EntityPreferenceDefs NGCP::Panel::Role::API/;
use Data::HAL qw();
use Data::HAL::Link qw();
use HTTP::Headers qw();
use HTTP::Status qw(:constants);
use NGCP::Panel::Utils::Preferences; use NGCP::Panel::Utils::Preferences;
use JSON::Types qw();
require Catalyst::ActionRole::ACL;
require Catalyst::ActionRole::CheckTrailingSlash;
require NGCP::Panel::Role::HTTPMethods;
require Catalyst::ActionRole::RequireSSL;
sub allowed_methods{ sub allowed_methods{
return [qw/GET OPTIONS HEAD/]; return [qw/GET OPTIONS HEAD/];
} }
use parent qw/NGCP::Panel::Role::Entities/; __PACKAGE__->set_config({
preferences_group => 'peer_pref',
sub resource_name{ allowed_roles => [qw/admin/],
return 'peeringserverpreferencedefs'; });
}
sub dispatch_path{
return '/api/peeringserverpreferencedefs/';
}
sub relation{
return 'http://purl.org/sipwise/ngcp-api/#rel-peeringserverpreferencedefs';
}
__PACKAGE__->config(
action => {
map { $_ => {
ACLDetachTo => '/api/root/invalid_user',
AllowedRole => [qw/admin/],
Args => 0,
Does => [qw(ACL CheckTrailingSlash RequireSSL)],
Method => $_,
Path => __PACKAGE__->dispatch_path,
} } @{ __PACKAGE__->allowed_methods }
},
);
sub GET :Allow {
my ($self, $c) = @_;
{
my @links;
push @links,
Data::HAL::Link->new(
relation => 'curies',
href => 'http://purl.org/sipwise/ngcp-api/#rel-{rel}',
name => 'ngcp',
templated => true,
),
Data::HAL::Link->new(relation => 'profile', href => 'http://purl.org/sipwise/ngcp-api/'),
Data::HAL::Link->new(relation => 'self', href => sprintf('%s', $self->dispatch_path));
my $hal = Data::HAL->new(
links => [@links],
);
my $resource = NGCP::Panel::Utils::Preferences::api_preferences_defs( c => $c, preferences_group => 'peer_pref' );
$hal->resource($resource);
my $response = HTTP::Response->new(HTTP_OK, undef,
HTTP::Headers->new($hal->http_headers(skip_links => 1)), $hal->as_json);
$c->response->headers($response->headers);
$c->response->body($response->content);
return;
}
return;
}
1; 1;

@ -1,88 +1,19 @@
package NGCP::Panel::Controller::API::ProfilePreferenceDefs; package NGCP::Panel::Controller::API::ProfilePreferenceDefs;
use NGCP::Panel::Utils::Generic qw(:all);
use Sipwise::Base; use Sipwise::Base;
use boolean qw(true); use parent qw/NGCP::Panel::Role::EntityPreferenceDefs NGCP::Panel::Role::API/;
use Data::HAL qw();
use Data::HAL::Link qw();
use HTTP::Headers qw();
use HTTP::Status qw(:constants);
use NGCP::Panel::Utils::Preferences; use NGCP::Panel::Utils::Preferences;
use JSON::Types qw();
require Catalyst::ActionRole::ACL;
require Catalyst::ActionRole::CheckTrailingSlash;
require NGCP::Panel::Role::HTTPMethods;
require Catalyst::ActionRole::RequireSSL;
sub allowed_methods{ sub allowed_methods{
return [qw/GET OPTIONS HEAD/]; return [qw/GET OPTIONS HEAD/];
} }
use parent qw/NGCP::Panel::Role::Entities/; __PACKAGE__->set_config({
preferences_group => 'prof_pref',
sub resource_name{ allowed_roles => [qw/admin reseller/],
return 'profilepreferencedefs'; });
}
sub dispatch_path{
return '/api/profilepreferencedefs/';
}
sub relation{
return 'http://purl.org/sipwise/ngcp-api/#rel-profilepreferencedefs';
}
__PACKAGE__->config(
action => {
map { $_ => {
ACLDetachTo => '/api/root/invalid_user',
AllowedRole => [qw/admin reseller/],
Args => 0,
Does => [qw(ACL CheckTrailingSlash RequireSSL)],
Method => $_,
Path => __PACKAGE__->dispatch_path,
} } @{ __PACKAGE__->allowed_methods }
},
);
sub GET :Allow {
my ($self, $c) = @_;
{
my @links;
push @links,
Data::HAL::Link->new(
relation => 'curies',
href => 'http://purl.org/sipwise/ngcp-api/#rel-{rel}',
name => 'ngcp',
templated => true,
),
Data::HAL::Link->new(relation => 'profile', href => 'http://purl.org/sipwise/ngcp-api/'),
Data::HAL::Link->new(relation => 'self', href => sprintf('%s', $self->dispatch_path));
my $hal = Data::HAL->new(
links => [@links],
);
my $resource = NGCP::Panel::Utils::Preferences::api_preferences_defs( c => $c, preferences_group => 'prof_pref' );
$hal->resource($resource);
my $response = HTTP::Response->new(HTTP_OK, undef,
HTTP::Headers->new($hal->http_headers(skip_links => 1)), $hal->as_json);
$c->response->headers($response->headers);
$c->response->body($response->content);
return;
}
return;
}
1; 1;

@ -1,80 +1,19 @@
package NGCP::Panel::Controller::API::SubscriberPreferenceDefs; package NGCP::Panel::Controller::API::SubscriberPreferenceDefs;
use NGCP::Panel::Utils::Generic qw(:all);
use Sipwise::Base; use Sipwise::Base;
use boolean qw(true); use parent qw/NGCP::Panel::Role::EntityPreferenceDefs NGCP::Panel::Role::API/;
use Data::HAL qw();
use Data::HAL::Link qw();
use HTTP::Headers qw();
use HTTP::Status qw(:constants);
use NGCP::Panel::Utils::Preferences; use NGCP::Panel::Utils::Preferences;
use JSON::Types qw();
require Catalyst::ActionRole::ACL;
require Catalyst::ActionRole::CheckTrailingSlash;
require NGCP::Panel::Role::HTTPMethods;
require Catalyst::ActionRole::RequireSSL;
sub allowed_methods{ sub allowed_methods{
return [qw/GET OPTIONS HEAD/]; return [qw/GET OPTIONS HEAD/];
} }
use parent qw/NGCP::Panel::Role::Entities/; __PACKAGE__->set_config({
preferences_group => 'usr_pref',
sub resource_name{ allowed_roles => [qw/admin reseller subscriberadmin subscriber/],
return 'subscriberpreferencedefs'; });
}
sub dispatch_path{
return '/api/subscriberpreferencedefs/';
}
sub relation{
return 'http://purl.org/sipwise/ngcp-api/#rel-subscriberpreferencedefs';
}
__PACKAGE__->config(
action => {
map { $_ => {
ACLDetachTo => '/api/root/invalid_user',
AllowedRole => [qw/admin reseller subscriberadmin subscriber/],
Args => 0,
Does => [qw(ACL CheckTrailingSlash RequireSSL)],
Method => $_,
Path => __PACKAGE__->dispatch_path,
} } @{ __PACKAGE__->allowed_methods }
},
);
sub GET :Allow {
my ($self, $c) = @_;
{
my @links;
push @links,
Data::HAL::Link->new(
relation => 'curies',
href => 'http://purl.org/sipwise/ngcp-api/#rel-{rel}',
name => 'ngcp',
templated => true,
),
Data::HAL::Link->new(relation => 'profile', href => 'http://purl.org/sipwise/ngcp-api/'),
Data::HAL::Link->new(relation => 'self', href => sprintf('%s', $self->dispatch_path));
my $hal = Data::HAL->new(
links => [@links],
);
my $resource = NGCP::Panel::Utils::Preferences::api_preferences_defs( c => $c, preferences_group => 'usr_pref' );
$hal->resource($resource);
my $response = HTTP::Response->new(HTTP_OK, undef,
HTTP::Headers->new($hal->http_headers(skip_links => 1)), $hal->as_json);
$c->response->headers($response->headers);
$c->response->body($response->content);
return;
}
return;
}
1; 1;

Loading…
Cancel
Save