old_contents: # -*- coding: utf8 -*-
  # This file is part of PyBossa.
  #
  # Copyright (C) 2015 SciFabric LTD.
  #
  # PyBossa is free software: you can redistribute it and/or modify
  # it under the terms of the GNU Affero General Public License as published by
  # the Free Software Foundation, either version 3 of the License, or
  # (at your option) any later version.
  #
  # PyBossa is distributed in the hope that it will be useful,
  # but WITHOUT ANY WARRANTY; without even the implied warranty of
  # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  # GNU Affero General Public License for more details.
  #
  # You should have received a copy of the GNU Affero General Public License
  # along with PyBossa.  If not, see <http://www.gnu.org/licenses/>.
  """
  PyBossa api module for exposing domain object Result via an API.
  
  This package adds GET, POST, PUT and DELETE methods for:
      * tasks
  
  """
  from werkzeug.exceptions import BadRequest
  from pybossa.model.result import Result
  from api_base import APIBase
  
  
  class ResultAPI(APIBase):
  
      """Class for domain object Result."""
  
      __class__ = Result
      reserved_keys = set(['id', 'created', 'project_id',
                           'task_id', 'task_run_ids'])
  
      def _forbidden_attributes(self, data):
          for key in data.keys():
              if key in self.reserved_keys:
                  raise BadRequest("Reserved keys in payload")
  
new_contents: # -*- coding: utf8 -*-
  # This file is part of PyBossa.
  #
  # Copyright (C) 2015 SciFabric LTD.
  #
  # PyBossa is free software: you can redistribute it and/or modify
  # it under the terms of the GNU Affero General Public License as published by
  # the Free Software Foundation, either version 3 of the License, or
  # (at your option) any later version.
  #
  # PyBossa is distributed in the hope that it will be useful,
  # but WITHOUT ANY WARRANTY; without even the implied warranty of
  # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  # GNU Affero General Public License for more details.
  #
  # You should have received a copy of the GNU Affero General Public License
  # along with PyBossa.  If not, see <http://www.gnu.org/licenses/>.
  """
  PyBossa api module for exposing domain object Result via an API.
  
  This package adds GET, POST, PUT and DELETE methods for:
      * tasks
  
  """
  from werkzeug.exceptions import BadRequest
  from pybossa.model.result import Result
  from api_base import APIBase
  
  
  class ResultAPI(APIBase):
  
      """Class for domain object Result."""
  
      __class__ = Result
      reserved_keys = set(['id', 'created', 'project_id',
                           'task_id', 'task_run_ids', 'last_version'])
  
      def _forbidden_attributes(self, data):
          for key in data.keys():
              if key in self.reserved_keys:
                  raise BadRequest("Reserved keys in payload")
  
subject: Exclude last_version.