0
|
1 /*
|
|
2 * ConnectBot: simple, powerful, open-source SSH client for Android
|
|
3 * Copyright 2010 Kenny Root, Jeffrey Sharkey
|
|
4 *
|
|
5 * Licensed under the Apache License, Version 2.0 (the "License");
|
|
6 * you may not use this file except in compliance with the License.
|
|
7 * You may obtain a copy of the License at
|
|
8 *
|
|
9 * http://www.apache.org/licenses/LICENSE-2.0
|
|
10 *
|
|
11 * Unless required by applicable law or agreed to in writing, software
|
|
12 * distributed under the License is distributed on an "AS IS" BASIS,
|
|
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14 * See the License for the specific language governing permissions and
|
|
15 * limitations under the License.
|
|
16 */
|
|
17
|
|
18 package com.five_ten_sg.connectbot.service;
|
|
19
|
|
20 import java.io.IOException;
|
|
21
|
|
22 import com.five_ten_sg.connectbot.util.HostDatabase;
|
|
23 import com.five_ten_sg.connectbot.util.PreferenceConstants;
|
|
24 import com.five_ten_sg.connectbot.util.PubkeyDatabase;
|
|
25 import android.app.backup.BackupAgentHelper;
|
|
26 import android.app.backup.BackupDataInput;
|
|
27 import android.app.backup.BackupDataOutput;
|
|
28 import android.app.backup.FileBackupHelper;
|
|
29 import android.app.backup.SharedPreferencesBackupHelper;
|
|
30 import android.os.ParcelFileDescriptor;
|
|
31 import android.util.Log;
|
|
32
|
|
33 /**
|
|
34 * @author kroot
|
|
35 *
|
|
36 */
|
|
37 public class BackupAgent extends BackupAgentHelper {
|
|
38 @Override
|
|
39 public void onCreate() {
|
|
40 Log.d("ConnectBot.BackupAgent", "onCreate called");
|
|
41 SharedPreferencesBackupHelper prefs = new SharedPreferencesBackupHelper(this, getPackageName() + "_preferences");
|
|
42 addHelper(PreferenceConstants.BACKUP_PREF_KEY, prefs);
|
|
43 FileBackupHelper hosts = new FileBackupHelper(this, "../databases/" + HostDatabase.DB_NAME);
|
|
44 addHelper(HostDatabase.DB_NAME, hosts);
|
|
45 FileBackupHelper pubkeys = new FileBackupHelper(this, "../databases/" + PubkeyDatabase.DB_NAME);
|
|
46 addHelper(PubkeyDatabase.DB_NAME, pubkeys);
|
|
47 }
|
|
48
|
|
49 @Override
|
|
50 public void onBackup(ParcelFileDescriptor oldState, BackupDataOutput data,
|
|
51 ParcelFileDescriptor newState) throws IOException {
|
|
52 synchronized (HostDatabase.dbLock) {
|
|
53 super.onBackup(oldState, data, newState);
|
|
54 }
|
|
55 }
|
|
56
|
|
57 @Override
|
|
58 public void onRestore(BackupDataInput data, int appVersionCode,
|
|
59 ParcelFileDescriptor newState) throws IOException {
|
|
60 Log.d("ConnectBot.BackupAgent", "onRestore called");
|
|
61
|
|
62 synchronized (HostDatabase.dbLock) {
|
|
63 Log.d("ConnectBot.BackupAgent", "onRestore in-lock");
|
|
64 super.onRestore(data, appVersionCode, newState);
|
|
65 }
|
|
66 }
|
|
67 }
|