Example #1
0
 def about_topic(self, topic_id):
     """
     Returns the messages about a topic
     """
     path = "/messages/about_topic/%d" % extract_id(topic_id)
     return self._get_paged_messages(path,
                                     older_than,
                                     newer_than,
                                     limit, threaded)
Example #2
0
 def find(self, message_id):
     """
     Returns the message identified by the given message_id.
     """
     path = "/messages/%d" % extract_id(message_id)
     return self._get_paged_messages(path,
                                     older_than,
                                     newer_than,
                                     limit, threaded)
Example #3
0
 def find(self, message_id):
     """
     Returns the message identified by the given message_id.
     """
     path = "/messages/%d" % extract_id(message_id)
     return self._get_paged_messages(path,
                                     older_than=None,
                                     newer_than=None,
                                     limit=None, threaded=None)
Example #4
0
 def about_topic(self, topic_id):
     """
     Returns the messages about a topic
     """
     path = "/messages/about_topic/%d" % extract_id(topic_id)
     return self._get_paged_messages(path,
                                     older_than=None,
                                     newer_than=None,
                                     limit=None, threaded=None)
Example #5
0
    def from_group(self, group_id, older_than=None, newer_than=None,
                   limit=None, threaded=None):
        """
        Returns messages from specific group, specified with `group_id`.

        See the :meth:`all` method for a description of the keyword arguments.
        """
        path = "/messages/in_group/%d" % extract_id(group_id)
        return self._get_paged_messages(path, older_than, newer_than,
                                        limit, threaded)
Example #6
0
    def from_group(self, group_id, older_than=None, newer_than=None,
                   limit=None, threaded=None):
        """
        Returns messages from specific group, specified with `group_id`.

        See the :meth:`all` method for a description of the keyword arguments.
        """
        path = "/messages/in_group/%d" % extract_id(group_id)
        return self._get_paged_messages(path, older_than, newer_than,
                                        limit, threaded)
Example #7
0
    def join(self, group_id):
        """
        Join the group identified by the given group_id.

        Return True
        """
        path = "/group_memberships"
        group_id = extract_id(group_id)
        return self._client.post(
            path, **self._argument_converter(group_id=group_id, ))
Example #8
0
    def in_group(self, group_id, page=None):
        """
        Returns all the users belonging to the group identified by the given
        group_id.

        Use the page parameter to enable pagination and retrieve a specific
        page of users.
        """
        path = "/users/in_group/%d" % extract_id(group_id)
        return self._client.get(path, **self._argument_converter(page=page, ))
Example #9
0
    def leave(self, group_id):
        """
        Leave the group identified by the given group_id.

        Return True
        """
        path = "/group_memberships"
        group_id = extract_id(group_id)
        return self._client.delete(
            path, **self._argument_converter(group_id=group_id, ))
Example #10
0
    def leave(self, group_id):
        """
        Leave the group identified by the given group_id.

        Return True
        """
        path = "/group_memberships"
        group_id = extract_id(group_id)
        return self._client.delete(path, **self._argument_converter(
            group_id=group_id,
        ))
Example #11
0
    def join(self, group_id):
        """
        Join the group identified by the given group_id.

        Return True
        """
        path = "/group_memberships"
        group_id = extract_id(group_id)
        return self._client.post(path, **self._argument_converter(
            group_id=group_id,
        ))
Example #12
0
    def in_thread(self, thread_id, older_than=None, newer_than=None,
                  limit=None, threaded=None):
        """
        Returns messages that belong to the thread identified by thread_id.

        See the :meth:`all` method for a description of the keyword arguments.
        """
        path = "/messages/in_thread/%d" % extract_id(thread_id)
        return self._get_paged_messages(path,
                                        older_than,
                                        newer_than,
                                        limit, threaded)
Example #13
0
    def from_user(self, user_id, older_than=None, newer_than=None,
                  limit=None, threaded=None):
        """
        Returns messages that were posted by the user identified by user_id.

        See the :meth:`all` method for a description of the keyword arguments.
        """
        path = "/messages/from_user/%d" % extract_id(user_id)
        return self._get_paged_messages(path,
                                        older_than,
                                        newer_than,
                                        limit, threaded)
Example #14
0
    def in_thread(self, thread_id, older_than=None, newer_than=None,
                  limit=None, threaded=None):
        """
        Returns messages that belong to the thread identified by thread_id.

        See the :meth:`all` method for a description of the keyword arguments.
        """
        path = "/messages/in_thread/%d" % extract_id(thread_id)
        return self._get_paged_messages(path,
                                        older_than,
                                        newer_than,
                                        limit, threaded)
Example #15
0
    def in_group(self, group_id, page=None):
        """
        Returns all the users belonging to the group identified by the given
        group_id.

        Use the page parameter to enable pagination and retrieve a specific
        page of users.
        """
        path = "/users/in_group/%d" % extract_id(group_id)
        return self._client.get(path, **self._argument_converter(
            page=page,
        ))
Example #16
0
 def __call__(self, arguments):
     """
     Attempts to extract an ID from the value of any key that matches the
     pattern that was provided to the initialiser.
     e.g. With the default pattern of '^.*_id$'
          {"foo_id": {"id": 3}}  becomes  {"foo_id": 3}
     """
     result = arguments.copy()
     for key in arguments:
         if self._key_matcher.match(key):
             result[key] = extract_id(arguments[key])
     return result
Example #17
0
    def from_user(self, user_id, older_than=None, newer_than=None,
                  limit=None, threaded=None):
        """
        Returns messages that were posted by the user identified by user_id.

        See the :meth:`all` method for a description of the keyword arguments.
        """
        path = "/messages/from_user/%d" % extract_id(user_id)
        return self._get_paged_messages(path,
                                        older_than,
                                        newer_than,
                                        limit, threaded)
Example #18
0
 def from_topic(self, topic_id, older_than=None, newer_than=None,
                limit=None, threaded=None):
     """
     Returns messages from specific group, specified with `group_id`.
      See the :meth:`all` method for a description of the keyword arguments.
     """
     path = "/messages/from_topic/%d" % extract_id(topic_id)
     return self._client.get(path, **self._argument_converter(
         older_than=older_than,
         newer_than=newer_than,
         limit=limit,
         threaded=threaded,
     ))
Example #19
0
    def from_group(self, group_id, older_than=None, newer_than=None,
                   limit=None, threaded=None):
        """
        Returns messages from specific group, specified with `group_id`.

        See the :meth:`all` method for a description of the keyword arguments.
        """
        path = "/messages/in_group/%d" % extract_id(group_id)
        return self._client.get(path, **self._argument_converter(
            older_than=older_than,
            newer_than=newer_than,
            limit=limit,
            threaded=threaded,
        ))
Example #20
0
    def from_user(self, user_id, older_than=None, newer_than=None,
                  limit=None, threaded=None):
        """
        Returns messages that were posted by the user identified by user_id.

        See the :meth:`all` method for a description of the keyword arguments.
        """
        path = "/messages/from_user/%d" % extract_id(user_id)
        return self._client.get(path, **self._argument_converter(
            older_than=older_than,
            newer_than=newer_than,
            limit=limit,
            threaded=threaded,
        ))
Example #21
0
    def from_user(self, user_id, older_than=None, newer_than=None,
                  limit=None, threaded=None):
        """
        Returns messages that were posted by the user identified by user_id.

        See the :meth:`all` method for a description of the keyword arguments.
        """
        path = "/messages/from_user/%d" % extract_id(user_id)
        return self._client.get(path, **self._argument_converter(
            older_than=older_than,
            newer_than=newer_than,
            limit=limit,
            threaded=threaded,
        ))
Example #22
0
    def in_thread(self, thread_id, older_than=None, newer_than=None,
                  limit=None, threaded=None):
        """
        Returns messages that belong to the thread identified by thread_id.

        See the :meth:`all` method for a description of the keyword arguments.
        """
        path = "/messages/in_thread/%d" % extract_id(thread_id)
        return self._client.get(path, **self._argument_converter(
            older_than=older_than,
            newer_than=newer_than,
            limit=limit,
            threaded=threaded,
        ))
Example #23
0
    def in_thread(self, thread_id, older_than=None, newer_than=None,
                  limit=None, threaded=None):
        """
        Returns messages that belong to the thread identified by thread_id.

        See the :meth:`all` method for a description of the keyword arguments.
        """
        path = "/messages/in_thread/%d" % extract_id(thread_id)
        return self._client.get(path, **self._argument_converter(
            older_than=older_than,
            newer_than=newer_than,
            limit=limit,
            threaded=threaded,
        ))
Example #24
0
 def delete(self, message_id):
     """
     Deletes the message identified by message_id.
     """
     return self._client.delete("/messages/%d" % extract_id(message_id))
Example #25
0
 def find(self, message_id):
     """
     Returns the message identified by the given message_id.
     """
     path = "/messages/%d" % extract_id(message_id)
     return self._client.get(path)
Example #26
0
 def _user_path(self, user_id):
     return "/users/%d" % extract_id(user_id)
Example #27
0
 def _group_path(self, group_id):
     return "/groups/%d" % extract_id(group_id)
Example #28
0
 def _group_path(self, group_id):
     return "/groups/%d" % extract_id(group_id)
Example #29
0
 def delete(self, message_id):
     """
     Deletes the message identified by message_id.
     """
     return self._client.delete("/messages/%d" % extract_id(message_id))
Example #30
0
 def find(self, message_id):
     """
     Returns the message identified by the given message_id.
     """
     return self._client.get("/messages/%d" % extract_id(message_id))
Example #31
0
 def test_extraction_from_dict(self):
     object_id = extract_id({"id": 17})
     self.assertEquals(17, object_id)
Example #32
0
 def _user_path(self, user_id):
     return "/users/%d" % extract_id(user_id)
Example #33
0
 def test_extraction_from_attribute(self):
     object_id = extract_id(GenericModel({"id": 21}))
     self.assertEquals(21, object_id)
Example #34
0
 def test_fallback_when_extraction_fails(self):
     object_id = extract_id(37)
     self.assertEquals(37, object_id)