Skip to content
  • aviau's avatar
    Multi-device support · 0c4326e4
    aviau authored
    - Add properties to Account:
        * deviceId:
            The id of the current device for this account
        * archivePassword:
            The password used to encrypt the account archive
            by the daemon
        * needsMigration:
            Whether or not this account needs to be migrated
            to the new archive format.
        * archivePin:
            The pin used to import the account from the Ring.
    
    - Add new methods to Account:
        * exportOnRing:
            Initializes an account export operation, returns True or
            false depending on whether the transaction was initialized
            successfully or not. exportOnRingEnded is emitted on operation
            completion.
    
    - Add a new model to Account:
          * RingDevicesModel:
              This models contains a list of known devices, their name,
              and their ID. For now, the name is just the short ID.
              Devices are added as they are discovered by the daemon.
    
    - Add a new method to AccountModel
       * accountsToMigrate:
           This methods returns a list of accounts that need migration. To
           the new archive format.
    
    Note: Migration to the new archive format is done like so:
      > account->setArchivePassword(password);
      > account->performAction(Account::EditAction::SAVE)
    
    - Add new signals to AccountModel:
        * knownDevicesChanged:
            emitted when the list of known Ring devices has changed.
            For example, it is emitted when the account is imported on a
            new device.
        * exportOnRingEnded:
            emitted after the operation initialized with exportOnRing has
            completed. The signal contains the status of the operation and
            the pin if the operation was a success.
    
    - Add new RegistrationState:
      * INITIALIZING:
          This state is used when the account is being created or imported
          from the Ring.
    
    Change-Id: I6cbbdd09bc368b76fe82eb4800fd87b6fdcc0aa7
    Tuleap: #896
    0c4326e4