Source code for contentful_management.entries_proxy
from .client_proxy import ClientProxy
from .entry import Entry
from .utils import normalize_select
"""
contentful_management.entries_proxy
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
This module implements the EntriesProxy class.
API reference: https://www.contentful.com/developers/docs/references/content-management-api/#/reference/entries
:copyright: (c) 2018 by Contentful GmbH.
:license: MIT, see LICENSE for more details.
"""
[docs]class EntriesProxy(ClientProxy):
    """
    API reference: https://www.contentful.com/developers/docs/references/content-management-api/#/reference/entries
    """
    def __init__(self, client, space_id, environment_id=None, content_type_id=None):
        super(EntriesProxy, self).__init__(client, space_id, environment_id=environment_id)
        self.content_type_id = content_type_id
    @property
    def _resource_class(self):
        return Entry
[docs]    def all(self, query=None):
        """
        Gets all entries of a space.
        """
        if query is None:
            query = {}
        if self.content_type_id is not None:
            query['content_type'] = self.content_type_id
        normalize_select(query)
        return super(EntriesProxy, self).all(query=query) 
[docs]    def find(self, entry_id, query=None):
        """
        Gets a single entry by ID.
        """
        if query is None:
            query = {}
        if self.content_type_id is not None:
            query['content_type'] = self.content_type_id
        normalize_select(query)
        return super(EntriesProxy, self).find(entry_id, query=query) 
[docs]    def create(self, resource_id=None, attributes=None, **kwargs):
        """
        Creates an entry with a given ID (optional) and attributes.
        """
        if self.content_type_id is not None:
            if attributes is None:
                attributes = {}
            attributes['content_type_id'] = self.content_type_id
        return super(EntriesProxy, self).create(resource_id=resource_id, attributes=attributes)