From 639d9642c27f19cc4d870d7e687e12197b4eb784 Mon Sep 17 00:00:00 2001 From: Zeapo Date: Sun, 27 Jul 2014 19:30:14 +0100 Subject: Recovering password lists (gpg files) --- app/src/main/java/com/zeapo/pwdstore/GitRepo.java | 41 ---------------- .../java/com/zeapo/pwdstore/PasswordFragment.java | 2 +- .../com/zeapo/pwdstore/PasswordRepository.java | 55 ++++++++++++++++++++++ .../java/com/zeapo/pwdstore/PasswordStore.java | 11 +---- 4 files changed, 58 insertions(+), 51 deletions(-) delete mode 100644 app/src/main/java/com/zeapo/pwdstore/GitRepo.java create mode 100644 app/src/main/java/com/zeapo/pwdstore/PasswordRepository.java (limited to 'app/src/main/java/com') diff --git a/app/src/main/java/com/zeapo/pwdstore/GitRepo.java b/app/src/main/java/com/zeapo/pwdstore/GitRepo.java deleted file mode 100644 index 34757b88..00000000 --- a/app/src/main/java/com/zeapo/pwdstore/GitRepo.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.zeapo.pwdstore; - -import org.eclipse.jgit.api.Git; -import org.eclipse.jgit.internal.storage.file.FileRepository; -import org.eclipse.jgit.lib.Repository; -import org.eclipse.jgit.lib.RepositoryBuilder; -import org.eclipse.jgit.storage.file.FileRepositoryBuilder; - -import java.io.File; -import java.io.IOException; - -/** - * Created by zeapo on 7/27/14. - */ -public class GitRepo { - - private static Repository repository; - - protected GitRepo(){ } - - public static Repository getRepository(File localDir) { - if (repository == null) { - FileRepositoryBuilder builder = new FileRepositoryBuilder(); - try { - repository = builder.setGitDir(localDir) - .readEnvironment() - .findGitDir() - .build(); - - } catch (Exception e) { - e.printStackTrace(); - return null; - } - } - return repository; - } - - public static void closeRepository() { - repository.close(); - } -} diff --git a/app/src/main/java/com/zeapo/pwdstore/PasswordFragment.java b/app/src/main/java/com/zeapo/pwdstore/PasswordFragment.java index f6a2d822..2f9f655b 100644 --- a/app/src/main/java/com/zeapo/pwdstore/PasswordFragment.java +++ b/app/src/main/java/com/zeapo/pwdstore/PasswordFragment.java @@ -47,7 +47,7 @@ public class PasswordFragment extends Fragment implements AbsListView.OnItemClic public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); - mAdapter = new PasswordAdapter(getActivity(), new ArrayList()); + mAdapter = new PasswordAdapter(getActivity(), PasswordRepository.getFilesList()); } @Override diff --git a/app/src/main/java/com/zeapo/pwdstore/PasswordRepository.java b/app/src/main/java/com/zeapo/pwdstore/PasswordRepository.java new file mode 100644 index 00000000..5861d229 --- /dev/null +++ b/app/src/main/java/com/zeapo/pwdstore/PasswordRepository.java @@ -0,0 +1,55 @@ +package com.zeapo.pwdstore; + +import org.apache.commons.io.FileUtils; +import org.apache.commons.io.filefilter.TrueFileFilter; +import org.eclipse.jgit.api.Git; +import org.eclipse.jgit.internal.storage.file.FileRepository; +import org.eclipse.jgit.lib.Repository; +import org.eclipse.jgit.lib.RepositoryBuilder; +import org.eclipse.jgit.storage.file.FileRepositoryBuilder; + +import java.io.File; +import java.io.IOException; +import java.util.ArrayList; +import java.util.List; + +public class PasswordRepository { + + private static Repository repository; + + protected PasswordRepository(){ } + + public static Repository getRepository(File localDir) { + if (repository == null) { + FileRepositoryBuilder builder = new FileRepositoryBuilder(); + try { + repository = builder.setGitDir(localDir) + .readEnvironment() + .findGitDir() + .build(); + + } catch (Exception e) { + e.printStackTrace(); + return null; + } + } + return repository; + } + + public static void closeRepository() { + repository.close(); + } + + public static ArrayList getFilesList(){ + return getFilesList(repository.getWorkTree()); + } + + public static ArrayList getFilesList(File path){ + List files = (List) FileUtils.listFiles(path, new String[] {"gpg"}, true); + ArrayList filePaths = new ArrayList(); + for (File file : files) { + filePaths.add(file.getAbsolutePath().replace(repository.getWorkTree().getAbsolutePath(), "")); + } + return filePaths; + } +} diff --git a/app/src/main/java/com/zeapo/pwdstore/PasswordStore.java b/app/src/main/java/com/zeapo/pwdstore/PasswordStore.java index 8b047626..a31fa50e 100644 --- a/app/src/main/java/com/zeapo/pwdstore/PasswordStore.java +++ b/app/src/main/java/com/zeapo/pwdstore/PasswordStore.java @@ -48,9 +48,10 @@ public class PasswordStore extends Activity implements ToCloneOrNot.OnFragmentI super.onResume(); // re-check that there was no change with the repository state checkLocalRepository(); + Repository repository = PasswordRepository.getRepository(new File(getFilesDir() + "/store/.git")); + PasswordRepository.getFilesList(); } - @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. @@ -115,12 +116,4 @@ public class PasswordStore extends Activity implements ToCloneOrNot.OnFragmentI } } - public void addItem(View view) { - ListView l = (ListView) findViewById(R.id.pass_list); - - PasswordAdapter pad = (PasswordAdapter) l.getAdapter(); - - pad.add("Something"); - } - } -- cgit v1.2.3