diff --git a/briar-android/src/org/briarproject/android/CrashReportActivity.java b/briar-android/src/org/briarproject/android/CrashReportActivity.java index 539591cb7ce94be77aa5f3a077deb5f76fc0c209..a2b8b2ac9aa1f44905f338f20d6be2d52ed2fe0d 100644 --- a/briar-android/src/org/briarproject/android/CrashReportActivity.java +++ b/briar-android/src/org/briarproject/android/CrashReportActivity.java @@ -45,7 +45,6 @@ import org.briarproject.android.util.LayoutUtils; import org.briarproject.android.util.ListLoadingProgressBar; import org.briarproject.api.android.AndroidExecutor; import org.briarproject.api.system.FileUtils; -import org.briarproject.system.AndroidFileUtils; import org.briarproject.util.StringUtils; import android.annotation.SuppressLint; @@ -71,12 +70,14 @@ import android.widget.LinearLayout; import android.widget.ScrollView; import android.widget.TextView; +import javax.inject.Inject; + public class CrashReportActivity extends Activity implements OnClickListener { private static final Logger LOG = Logger.getLogger(CrashReportActivity.class.getName()); - private final FileUtils fileUtils = new AndroidFileUtils(); + @Inject private FileUtils fileUtils; private final AndroidExecutor androidExecutor = new AndroidExecutorImpl(); private ScrollView scroll = null; diff --git a/briar-android/src/org/briarproject/android/PasswordActivity.java b/briar-android/src/org/briarproject/android/PasswordActivity.java index 3d5ecd5e16057319a4f5b1fc32967976ad91b529..383fa88b89dfcb709c62b3bcdfcae2041fe4bee0 100644 --- a/briar-android/src/org/briarproject/android/PasswordActivity.java +++ b/briar-android/src/org/briarproject/android/PasswordActivity.java @@ -12,7 +12,7 @@ import org.briarproject.api.crypto.CryptoComponent; import org.briarproject.api.crypto.CryptoExecutor; import org.briarproject.api.crypto.SecretKey; import org.briarproject.api.db.DatabaseConfig; -import org.briarproject.system.AndroidFileUtils; +import org.briarproject.api.system.FileUtils; import org.briarproject.util.StringUtils; import android.app.AlertDialog; @@ -41,6 +41,7 @@ public class PasswordActivity extends BaseActivity { // Fields that are accessed from background threads must be volatile @Inject private volatile CryptoComponent crypto; @Inject private volatile DatabaseConfig databaseConfig; + @Inject private FileUtils fileUtils; @Override public void onCreate(Bundle state) { @@ -72,7 +73,7 @@ public class PasswordActivity extends BaseActivity { @Override protected void clearDbPrefs() { super.clearDbPrefs(); - AndroidFileUtils.deleteFileOrDir(databaseConfig.getDatabaseDirectory()); + fileUtils.deleteFileOrDir(databaseConfig.getDatabaseDirectory()); gotoAndFinish(SetupActivity.class, RESULT_CANCELED); } diff --git a/briar-android/src/org/briarproject/system/AndroidFileUtils.java b/briar-android/src/org/briarproject/system/AndroidFileUtils.java deleted file mode 100644 index 3a5dfa3529916954781e1b92db2f613c0cd6f242..0000000000000000000000000000000000000000 --- a/briar-android/src/org/briarproject/system/AndroidFileUtils.java +++ /dev/null @@ -1,25 +0,0 @@ -package org.briarproject.system; - -import org.briarproject.api.system.FileUtils; - -import java.io.File; -import java.io.IOException; - -public class AndroidFileUtils implements FileUtils { - - public long getTotalSpace(File f) throws IOException { - return f.getTotalSpace(); - } - - public long getFreeSpace(File f) throws IOException { - return f.getUsableSpace(); - } - - public static void deleteFileOrDir(File f) { - if (f.isFile()) - f.delete(); - else if (f.isDirectory()) - for (File child : f.listFiles()) - deleteFileOrDir(child); - } -} diff --git a/briar-android/src/org/briarproject/system/AndroidSystemModule.java b/briar-android/src/org/briarproject/system/AndroidSystemModule.java index aa6769e59bf8bcf53723af9494985d1f38e36c6c..03fd56dcc49a23bb9d86b79f3f5f79b1120ad235 100644 --- a/briar-android/src/org/briarproject/system/AndroidSystemModule.java +++ b/briar-android/src/org/briarproject/system/AndroidSystemModule.java @@ -14,7 +14,7 @@ public class AndroidSystemModule extends AbstractModule { bind(Clock.class).to(SystemClock.class); bind(Timer.class).to(SystemTimer.class); bind(SeedProvider.class).to(AndroidSeedProvider.class); - bind(FileUtils.class).to(AndroidFileUtils.class); + bind(FileUtils.class).to(FileUtilsImpl.class); bind(LocationUtils.class).to(AndroidLocationUtils.class); } } diff --git a/briar-api/src/org/briarproject/api/system/FileUtils.java b/briar-api/src/org/briarproject/api/system/FileUtils.java index bde3960497f99d34458af49043e0968f634200e7..baf68ca0140b7b5654a6243212a7d867270d9331 100644 --- a/briar-api/src/org/briarproject/api/system/FileUtils.java +++ b/briar-api/src/org/briarproject/api/system/FileUtils.java @@ -8,4 +8,6 @@ public interface FileUtils { long getTotalSpace(File f) throws IOException; long getFreeSpace(File f) throws IOException; + + void deleteFileOrDir(File f); } diff --git a/briar-core/src/org/briarproject/system/FileUtilsImpl.java b/briar-core/src/org/briarproject/system/FileUtilsImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..923f35c9a159bc25e5cf98a8b996710664338fe1 --- /dev/null +++ b/briar-core/src/org/briarproject/system/FileUtilsImpl.java @@ -0,0 +1,25 @@ +package org.briarproject.system; + +import org.briarproject.api.system.FileUtils; + +import java.io.File; +import java.io.IOException; + +public class FileUtilsImpl implements FileUtils { + + public long getTotalSpace(File f) throws IOException { + return f.getTotalSpace(); // Requires Java 1.6 + } + + public long getFreeSpace(File f) throws IOException { + return f.getUsableSpace(); // Requires Java 1.6 + } + + public void deleteFileOrDir(File f) { + if (f.isFile()) + f.delete(); + else if (f.isDirectory()) + for (File child : f.listFiles()) + deleteFileOrDir(child); + } +} diff --git a/briar-desktop/src/org/briarproject/system/DesktopFileUtils.java b/briar-desktop/src/org/briarproject/system/DesktopFileUtils.java deleted file mode 100644 index c397068646923d52f59a3d912ca2fd5dd0873f72..0000000000000000000000000000000000000000 --- a/briar-desktop/src/org/briarproject/system/DesktopFileUtils.java +++ /dev/null @@ -1,17 +0,0 @@ -package org.briarproject.system; - -import java.io.File; -import java.io.IOException; - -import org.briarproject.api.system.FileUtils; - -class DesktopFileUtils implements FileUtils { - - public long getTotalSpace(File f) throws IOException { - return f.getTotalSpace(); // Requires Java 1.6 - } - - public long getFreeSpace(File f) throws IOException { - return f.getUsableSpace(); // Requires Java 1.6 - } -} diff --git a/briar-desktop/src/org/briarproject/system/DesktopSystemModule.java b/briar-desktop/src/org/briarproject/system/DesktopSystemModule.java index e6286d17d2019c4b25c6ffe582cc2438c6547857..e605fe95079c3bfe6b75d71cea214d42b8efba6b 100644 --- a/briar-desktop/src/org/briarproject/system/DesktopSystemModule.java +++ b/briar-desktop/src/org/briarproject/system/DesktopSystemModule.java @@ -15,6 +15,6 @@ public class DesktopSystemModule extends AbstractModule { bind(Timer.class).to(SystemTimer.class); if (OsUtils.isLinux()) bind(SeedProvider.class).to(LinuxSeedProvider.class); - bind(FileUtils.class).to(DesktopFileUtils.class); + bind(FileUtils.class).to(FileUtilsImpl.class); } } diff --git a/briar-tests/src/org/briarproject/TestDatabaseModule.java b/briar-tests/src/org/briarproject/TestDatabaseModule.java index 8cff99d56fae768c35997f2a29139ce5aeb612a7..5e5128eca5789e02300ef0071fd132f9209a4f0c 100644 --- a/briar-tests/src/org/briarproject/TestDatabaseModule.java +++ b/briar-tests/src/org/briarproject/TestDatabaseModule.java @@ -4,6 +4,7 @@ import java.io.File; import org.briarproject.api.db.DatabaseConfig; import org.briarproject.api.system.FileUtils; +import org.briarproject.system.FileUtilsImpl; import com.google.inject.AbstractModule; @@ -25,6 +26,6 @@ public class TestDatabaseModule extends AbstractModule { protected void configure() { bind(DatabaseConfig.class).toInstance(config); - bind(FileUtils.class).to(TestFileUtils.class); + bind(FileUtils.class).to(FileUtilsImpl.class); } } diff --git a/briar-tests/src/org/briarproject/TestFileUtils.java b/briar-tests/src/org/briarproject/TestFileUtils.java deleted file mode 100644 index e81b16bde39acfd65947f69382228d4652466494..0000000000000000000000000000000000000000 --- a/briar-tests/src/org/briarproject/TestFileUtils.java +++ /dev/null @@ -1,17 +0,0 @@ -package org.briarproject; - -import java.io.File; -import java.io.IOException; - -import org.briarproject.api.system.FileUtils; - -public class TestFileUtils implements FileUtils { - - public long getTotalSpace(File f) throws IOException { - return f.getTotalSpace(); // Requires Java 1.6 - } - - public long getFreeSpace(File f) throws IOException { - return f.getUsableSpace(); // Requires Java 1.6 - } -} diff --git a/briar-tests/src/org/briarproject/db/H2DatabaseTest.java b/briar-tests/src/org/briarproject/db/H2DatabaseTest.java index ec21e4c6c0fc719b5b487d26b8dfe48dd9a3dddc..ce0ac374e25c9ec0f82f2c3563d89c602547b6b1 100644 --- a/briar-tests/src/org/briarproject/db/H2DatabaseTest.java +++ b/briar-tests/src/org/briarproject/db/H2DatabaseTest.java @@ -21,7 +21,6 @@ import java.util.concurrent.atomic.AtomicBoolean; import org.briarproject.BriarTestCase; import org.briarproject.TestDatabaseConfig; -import org.briarproject.TestFileUtils; import org.briarproject.TestMessage; import org.briarproject.TestUtils; import org.briarproject.api.Author; @@ -39,6 +38,7 @@ import org.briarproject.api.messaging.Message; import org.briarproject.api.messaging.MessageId; import org.briarproject.api.transport.Endpoint; import org.briarproject.api.transport.TemporarySecret; +import org.briarproject.system.FileUtilsImpl; import org.briarproject.system.SystemClock; import org.junit.After; import org.junit.Before; @@ -1605,7 +1605,7 @@ public class H2DatabaseTest extends BriarTestCase { private Database<Connection> open(boolean resume) throws Exception { Database<Connection> db = new H2Database(new TestDatabaseConfig(testDir, - MAX_SIZE), new TestFileUtils(), new SystemClock()); + MAX_SIZE), new FileUtilsImpl(), new SystemClock()); if (!resume) TestUtils.deleteTestDirectory(testDir); db.open(); return db; diff --git a/briar-tests/src/org/briarproject/plugins/file/RemovableDrivePluginTest.java b/briar-tests/src/org/briarproject/plugins/file/RemovableDrivePluginTest.java index 5ae0bbb5030235a60ebb45aa0e05fb146155a34a..a403833b6f1711cd9b3b2e27e2295b9eb08a40da 100644 --- a/briar-tests/src/org/briarproject/plugins/file/RemovableDrivePluginTest.java +++ b/briar-tests/src/org/briarproject/plugins/file/RemovableDrivePluginTest.java @@ -1,5 +1,7 @@ package org.briarproject.plugins.file; +import com.google.inject.Inject; + import static org.briarproject.api.transport.TransportConstants.MIN_STREAM_LENGTH; import java.io.File; @@ -11,7 +13,6 @@ import java.util.List; import java.util.concurrent.Executor; import org.briarproject.BriarTestCase; -import org.briarproject.TestFileUtils; import org.briarproject.TestUtils; import org.briarproject.api.ContactId; import org.briarproject.api.plugins.TransportConnectionWriter; @@ -29,7 +30,7 @@ public class RemovableDrivePluginTest extends BriarTestCase { private final File testDir = TestUtils.getTestDirectory(); private final ContactId contactId = new ContactId(234); - private final FileUtils fileUtils = new TestFileUtils(); + @Inject private FileUtils fileUtils; @Override @Before