def add(self, obj):
        """ Adds a member to the collection.

        :param obj: Object to add.

        Example:
            >>> mycollection.add(pump.Person('bob@example.org'))
        """
        activity = {
            "verb": "add",
            "object": {
                "objectType": obj.object_type,
                "id": obj.id
            },
            "target": {
                "objectType": self.object_type,
                "id": self.id
            }
        }

        self._post_activity(activity)

        # Remove the cash so it's re-generated next time it's needed
        self._members = None