aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorknuthy <knuthy@gmail.com>2014-10-04 18:26:16 +0200
committerknuthy <knuthy@gmail.com>2014-10-04 18:26:16 +0200
commit27ac841e6d176da293e5cead48566bc00541fc00 (patch)
tree75089df7d6fd964b72b0a5dddc8d67e1583945bf
parent57948768c023e2b64576079f15705c96f9241c98 (diff)
corrected some bugs in repository creation
-rw-r--r--app/src/main/java/com/zeapo/pwdstore/PasswordStore.java11
-rw-r--r--app/src/main/java/com/zeapo/pwdstore/utils/PasswordRepository.java30
2 files changed, 14 insertions, 27 deletions
diff --git a/app/src/main/java/com/zeapo/pwdstore/PasswordStore.java b/app/src/main/java/com/zeapo/pwdstore/PasswordStore.java
index a613b021..20f58cfb 100644
--- a/app/src/main/java/com/zeapo/pwdstore/PasswordStore.java
+++ b/app/src/main/java/com/zeapo/pwdstore/PasswordStore.java
@@ -156,15 +156,24 @@ public class PasswordStore extends Activity implements ToCloneOrNot.OnFragmentI
File localDir = new File(getFilesDir() + "/store/");
localDir.mkdir();
try {
+ PasswordRepository.createRepository(localDir);
+
// we take only the first key-id, we have to think about how to handle multiple keys, and why should we do that...
// also, for compatibility use short-version of the key-id
FileUtils.writeStringToFile(new File(localDir.getAbsolutePath() + "/.gpg-id"),
keyId.substring(keyId.length() - 8));
+
+ Git git = new Git(PasswordRepository.getRepository(new File("")));
+ GitAsyncTask tasks = new GitAsyncTask(this, false, false, CommitCommand.class);
+ tasks.execute(
+ git.add().addFilepattern("."),
+ git.commit().setMessage("[ANDROID PwdStore] Initialized store with keyID: " + keyId)
+ );
} catch (Exception e) {
+ e.printStackTrace();
localDir.delete();
return;
}
- PasswordRepository.createRepository(localDir);
checkLocalRepository();
}
diff --git a/app/src/main/java/com/zeapo/pwdstore/utils/PasswordRepository.java b/app/src/main/java/com/zeapo/pwdstore/utils/PasswordRepository.java
index 24a1524c..bc36f1cb 100644
--- a/app/src/main/java/com/zeapo/pwdstore/utils/PasswordRepository.java
+++ b/app/src/main/java/com/zeapo/pwdstore/utils/PasswordRepository.java
@@ -14,10 +14,8 @@ import org.eclipse.jgit.transport.URIish;
import java.io.File;
import java.io.FileFilter;
-import java.lang.reflect.Array;
import java.util.ArrayList;
import java.util.Arrays;
-import java.util.Collections;
import java.util.List;
import java.util.Set;
@@ -34,7 +32,7 @@ public class PasswordRepository {
if (repository == null) {
FileRepositoryBuilder builder = new FileRepositoryBuilder();
try {
- repository = builder.setGitDir(localDir)
+ repository = builder.setWorkTree(localDir)
.readEnvironment()
.findGitDir()
.build();
@@ -54,31 +52,11 @@ public class PasswordRepository {
initialized = v;
}
- public static void createRepository(File localDir) {
+ public static void createRepository(File localDir) throws Exception{
localDir.delete();
- try {
-
- // create the directory
- Repository repository = FileRepositoryBuilder.create(new File(localDir, ".git"));
- repository.create();
-
- Git.init()
- .setDirectory(localDir)
- .call();
-
- getRepository(localDir);
-
- new Git(repository)
- .branchCreate()
- .setName("master")
- .call();
-
- initialized = true;
- } catch (Exception e) {
- e.printStackTrace();
- return;
- }
+ Git.init().setDirectory(localDir).call();
+ getRepository(localDir);
}
// TODO add remote edition later-on