| # Licensed to the Apache Software Foundation (ASF) under one or more |
| # contributor license agreements. See the NOTICE file distributed with |
| # this work for additional information regarding copyright ownership. The |
| # ASF licenses this file to you under the Apache License, Version 2.0 (the |
| # "License"); you may not use this file except in compliance with the |
| # License. You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, software |
| # distributed under the License is distributed on an "AS IS" BASIS, WITHOUT |
| # WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the |
| # License for the specific language governing permissions and limitations |
| # under the License. |
| |
| module Deltacloud::Client |
| module Methods |
| module <%=name.to_s.camelize%> |
| |
| # Retrieve list of all <%=name%> entities |
| # |
| # Filter options: |
| # |
| # - :id -> Filter entities using 'id' attribute |
| # |
| def <%=name.to_s.pluralize%>(filter_opts={}) |
| from_collection :<%=name.to_s.pluralize%>, |
| connection.get(api_uri('<%=name.to_s.pluralize%>'), filter_opts) |
| end |
| |
| # Retrieve the single <%=name%> entity |
| # |
| # - <%=name%>_id -> <%=name.to_s.camelize%> entity to retrieve |
| # |
| def <%=name%>(<%=name%>_id) |
| from_resource :<%=name%>, |
| connection.get(api_uri("<%=name.to_s.pluralize%>/#{<%=name%>_id}")) |
| end |
| |
| # Create a new <%=name%> |
| # |
| # - create_opts |
| # |
| # def create_<%=name%>(create_opts={}) |
| # must_support! :<%=name.to_s.pluralize%> |
| # response = connection.post(api_uri('<%=name.to_s.pluralize%>')) do |request| |
| # request.params = create_opts |
| # end |
| # model(:<%=name%>).convert(self, response.body) |
| # end |
| |
| end |
| end |
| end |