11789: Merge branch 'master' into 11789-arvput-exclude-flag
[arvados.git] / sdk / perl / lib / Arvados / ResourceAccessor.pm
1 # Copyright (C) The Arvados Authors. All rights reserved.
2 #
3 # SPDX-License-Identifier: Apache-2.0
4
5 package Arvados::ResourceAccessor;
6 use Carp;
7 use Data::Dumper;
8
9 sub new
10 {
11     my $class = shift;
12     my $self = {};
13     bless ($self, $class);
14
15     $self->{'api'} = shift;
16     $self->{'resourcesName'} = shift;
17     $self->{'methods'} = $self->{'api'}->{'discoveryDocument'}->{'resources'}->{$self->{'resourcesName'}}->{'methods'};
18     my $method_name, $method;
19     while (($method_name, $method) = each %{$self->{'methods'}}) {
20         $self->{$method_name} = Arvados::ResourceMethod->new($self, $method);
21     }
22     $self;
23 }
24
25 1;