コード例 #1
0
ファイル: bookmarks.py プロジェクト: bryanforbes/imobilesync
from imobilesync.data.base import BaseList, Base, RelatedBase
from imobilesync.config import config, state
from imobilesync.options import parser

__all__ = ["Bookmark", "Bookmarks"]

TYPE_FIREFOX = 0
TYPE_CHROME = 1
TYPE_CHROMIUM = 2


class Bookmark(Base):
    entity_name = "com.apple.bookmarks.Bookmark"


class Bookmarks(BaseList):
    parent_schema_name = "com.apple.Bookmarks"
    parent_schema_class = Bookmark

    config = config.add("bookmarks", {})
    state = state.add("bookmarks", {"last_sync_time": None})

    def __init__(self, uuid, mobile_sync):
        super(Bookmarks, self).__init__(uuid, mobile_sync)


parser.add_option("--bookmarks", action="append_const", dest="sync_type", const=Bookmarks)
コード例 #2
0
ファイル: bookmarks.py プロジェクト: hmyit/imobilesync
from imobilesync.data.base import BaseList, Base, RelatedBase
from imobilesync.config import config, state
from imobilesync.options import parser

__all__ = ['Bookmark', 'Bookmarks']

TYPE_FIREFOX = 0
TYPE_CHROME = 1
TYPE_CHROMIUM = 2

class Bookmark(Base):
    entity_name = 'com.apple.bookmarks.Bookmark'

class Bookmarks(BaseList):
    parent_schema_name = "com.apple.Bookmarks"
    parent_schema_class = Bookmark

    config = config.add('bookmarks', {})
    state = state.add('bookmarks', {
        'last_sync_time': None
    })

    def __init__(self, uuid, mobile_sync):
        super(Bookmarks, self).__init__(uuid, mobile_sync)

parser.add_option('--bookmarks', action='append_const', dest='sync_type', const=Bookmarks)
コード例 #3
0
        if hasattr(self, "notes"):
            card.add('note')
            card.note.value = self.notes

        return card

    def serialize(self):
        return self.__vcard__().serialize()


class Contacts(BaseList):
    parent_schema_name = "com.apple.Contacts"
    parent_schema_class = Contact

    config = config.add('contacts', {})
    state = state.add('contacts', {'last_sync_time': None})

    def __process_related_record(self, related_record):
        if isinstance(related_record, Group):
            for id in related_record.parent_ids:
                self._parent_records[id].groups[
                    related_record.id] = related_record
        else:
            super(Contacts, self).__process_related_record(related_record)


parser.add_option('--contacts',
                  action='append_const',
                  dest='sync_type',
                  const=Contacts)
コード例 #4
0
ファイル: contacts.py プロジェクト: PiRATEjAY/imobilesync
            photo.encoding_param = 'B'
            photo.type_param = 'JPEG'
            photo.value = self.image

        if hasattr(self, "notes"):
            card.add('note')
            card.note.value = self.notes

        return card

    def serialize(self):
        return self.__vcard__().serialize()

class Contacts(BaseList):
    parent_schema_name = "com.apple.Contacts"
    parent_schema_class = Contact

    config = config.add('contacts', {})
    state = state.add('contacts', {
        'last_sync_time': None
    })

    def __process_related_record(self, related_record):
        if isinstance(related_record, Group):
            for id in related_record.parent_ids:
                self._parent_records[id].groups[related_record.id] = related_record
        else:
            super(Contacts, self).__process_related_record(related_record)

parser.add_option('--contacts', action='append_const', dest='sync_type', const=Contacts)
コード例 #5
0
        self._event_records = {}
        self.__event_class_map = {}
        for cls in Event.related_classes:
            self.__event_class_map[cls.entity_name] = cls

    def _process_record(self, entity_name, id, record):
        super(Calendars, self)._process_record(entity_name, id, record)
        if entity_name in self.__event_class_map:
            cls = self.__event_class_map[entity_name]
            obj = cls(self._uuid, id, record)

            self._process_related_record(obj)

    def _process_related_record(self, related_record):
        if isinstance(related_record, Event):
            self._event_records[related_record.id] = related_record
            super(Calendars, self)._process_related_record(related_record)
        elif isinstance(related_record, Calendar):
            super(Calendars, self)._process_related_record(related_record)
        else:
            parent_objs = getattr(
                self._event_records[related_record.parent_id],
                related_record.parent_prop)
            parent_objs[related_record.id] = related_record


parser.add_option('--calendars',
                  action='append_const',
                  dest='sync_type',
                  const=Calendars)
コード例 #6
0
ファイル: notes.py プロジェクト: hmyit/imobilesync
from imobilesync.data.base import BaseList, Base, RelatedBase
from imobilesync.config import state, config
from imobilesync.options import parser

__all__ = ['Note', 'Notes']

class Note(Base):
    entity_name = 'com.apple.notes.Note'

class Notes(BaseList):
    parent_schema_name = "com.apple.Notes"
    parent_schema_class = Note

    config = config.add('contacts', {})
    state = state.add('contacts', {
        'last_sync_time': None
    })

    def __init__(self, uuid, mobile_sync):
        super(Notes, self).__init__(uuid, mobile_sync)

parser.add_option('--notes', action='append_const', dest='sync_type', const=Notes)
コード例 #7
0
ファイル: calendars.py プロジェクト: PiRATEjAY/imobilesync
        'last_sync_time': None
    })

    def __init__(self, uuid, mobile_sync):
        super(Calendars, self).__init__(uuid, mobile_sync)

        self._event_records = {}
        self.__event_class_map = {}
        for cls in Event.related_classes:
            self.__event_class_map[cls.entity_name] = cls

    def _process_record(self, entity_name, id, record):
        super(Calendars, self)._process_record(entity_name, id, record)
        if entity_name in self.__event_class_map:
            cls = self.__event_class_map[entity_name]
            obj = cls(self._uuid, id, record)

            self._process_related_record(obj)

    def _process_related_record(self, related_record):
        if isinstance(related_record, Event):
            self._event_records[related_record.id] = related_record
            super(Calendars, self)._process_related_record(related_record)
        elif isinstance(related_record, Calendar):
            super(Calendars, self)._process_related_record(related_record)
        else:
            parent_objs = getattr(self._event_records[related_record.parent_id], related_record.parent_prop)
            parent_objs[related_record.id] = related_record

parser.add_option('--calendars', action='append_const', dest='sync_type', const=Calendars)