$base/create
$base/list
+ $base/id/[identifier]
$base/id/[identifier]/delete
$base/id/[identifier]/update
...
);
-=method_protected object
-
-Chained: L</setup>
-PathPart: object
-CaptureArgs: 1
-
-Provides an chain point to the functionality described in L<Catalyst::Controller::DBIC::API/object>. All object level endpoints should use this as their chain root.
-
=cut
sub index : Chained('setup') PathPart('') Args(0) {
=method_protected create
-Chained: L</setup>
+Chained: L</object_no_id>
PathPart: create
CaptureArgs: 0
=cut
-sub create :Chained('setup') :PathPart('create') :Args(0)
+sub create :Chained('object_no_id') :PathPart('create') :Args(0)
{
my ($self, $c) = @_;
- $c->forward('object');
- return if $self->get_errors($c);
$c->forward('update_or_create');
}
=method_protected list
-Chained: L</setup>
+Chained: L</deserialize>
PathPart: list
CaptureArgs: 0
=cut
-sub list :Chained('setup') :PathPart('list') :Args(0) {
+sub list :Chained('deserialize') :PathPart('list') :Args(0) {
my ($self, $c) = @_;
$self->next::method($c);
}
+=method_protected item
+
+Chained: L</object_with_id>
+PathPart: ''
+Args: 0
+
+Provides an endpoint to the functionality described in L<Catalyst::Controller::DBIC::API/item>.
+
+=cut
+
+sub item :Chained('object_with_id') :PathPart('') :Args(0) {
+ my ($self, $c) = @_;
+
+ $c->forward('view');
+}
+
=method_protected update
-Chained: L</object>
+Chained: L</object_with_id>
PathPart: update
-CaptureArgs: 0
+Args: 0
Provides an endpoint to the functionality described in L<Catalyst::Controller::DBIC::API/update_or_create>.
=cut
-sub update :Chained('object') :PathPart('update') :Args(0) {
- my ($self, $c) = @_;
+sub update :Chained('object_with_id') :PathPart('update') :Args(0) {
+ my ($self, $c) = @_;
$c->forward('update_or_create');
}
=method_protected delete
-Chained: L</object>
+Chained: L</object_with_id>
PathPart: delete
-CaptureArgs: 0
+Args: 0
Provides an endpoint to the functionality described in L<Catalyst::Controller::DBIC::API/delete>.
=cut
-sub delete :Chained('object') :PathPart('delete') :Args(0) {
- my ($self, $c) = @_;
+sub delete :Chained('object_with_id') :PathPart('delete') :Args(0)
+{
+ my ($self, $c) = @_;
+ $self->next::method($c);
+}
- $self->next::method($c);
+=method_protected update_bulk
+
+Chained: L</object_no_id>
+PathPart: update
+Args: 0
+
+Provides an endpoint to the functionality described in L<Catalyst::Controller::DBIC::API/update_or_create> for multiple objects.
+
+=cut
+
+sub update_bulk :Chained('object_no_id') :PathPart('update') :Args(0)
+{
+ my ($self, $c) = @_;
+ $c->forward('update_or_create');
+}
+
+=method_protected delete_bulk
+
+Chained: L</object_no_id>
+PathPart: delete
+Args: 0
+
+Provides an endpoint to the functionality described in L<Catalyst::Controller::DBIC::API/delete> for multiple objects.
+
+=cut
+
+sub delete_bulk :Chained('object_no_id') :PathPart('delete') :Args(0)
+{
+ my ($self, $c) = @_;
+ $self->next::method($c);
}
1;