summaryrefslogtreecommitdiff
path: root/lib/chef/chef_fs/file_system/org_entry.rb
blob: df3acba528709c56c064d17b483bcf652839bb3f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
require 'chef/chef_fs/file_system/rest_list_entry'
require 'chef/chef_fs/data_handler/organization_data_handler'

class Chef
  module ChefFS
    module FileSystem
      # /organizations/NAME/org.json
      # Represents the actual data at /organizations/NAME (the full name, etc.)
      class OrgEntry < RestListEntry
        def data_handler
          Chef::ChefFS::DataHandler::OrganizationDataHandler.new
        end

        # /organizations/foo/org.json -> GET /organizations/foo
        def api_path
          parent.api_path
        end

        def exists?
          parent.exists?
        end

        def delete(recurse)
          raise Chef::ChefFS::FileSystem::OperationNotAllowedError.new(:delete, self)
        end
      end
    end
  end
end