From 3a2654edb8e882e8995606190ca2b1beb233152e Mon Sep 17 00:00:00 2001 From: Magnus Date: Fri, 12 Jan 2018 23:06:52 -0800 Subject: [PATCH] Set length in usbfileoutputsream.close issue #126 --- app/build.gradle | 5 ++--- build.gradle | 7 ++++++- gradle/wrapper/gradle-wrapper.properties | 4 ++-- httpserver/build.gradle | 3 +-- javafs/build.gradle | 1 - libaums/build.gradle | 5 ++--- .../github/mjdev/libaums/fs/UsbFileOutputStream.java | 1 + .../mjdev/libaums/fs/UsbFileOutputStreamTest.java | 12 ++++++++++++ storageprovider/build.gradle | 1 - 9 files changed, 26 insertions(+), 13 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 16dbd161..180405af 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -2,7 +2,6 @@ apply plugin: 'com.android.application' android { compileSdkVersion 25 - buildToolsVersion "25.0.2" defaultConfig { applicationId "com.github.mjdev.usbfileman" @@ -26,8 +25,8 @@ android { dependencies { compile fileTree(include: ['*.jar'], dir: 'libs') testCompile 'junit:junit:4.12' - compile 'com.android.support:appcompat-v7:25.1.0' - compile 'com.android.support:design:25.1.0' + compile 'com.android.support:appcompat-v7:25.4.0' + compile 'com.android.support:design:25.4.0' compile project(':libaums') compile project(':httpserver') compile project(':storageprovider') diff --git a/build.gradle b/build.gradle index 58da5a11..2eea576e 100644 --- a/build.gradle +++ b/build.gradle @@ -6,9 +6,13 @@ buildscript { maven { url 'https://dl.bintray.com/magnusja/maven' } + maven { + url 'https://maven.google.com/' + name 'Google' + } } dependencies { - classpath 'com.android.tools.build:gradle:2.3.3' + classpath 'com.android.tools.build:gradle:3.0.1' classpath 'com.jfrog.bintray.gradle:gradle-bintray-plugin:1.7.3' classpath 'com.github.dcendents:android-maven-gradle-plugin:1.5' @@ -47,6 +51,7 @@ allprojects { repositories { jcenter() maven { url 'https://dl.bintray.com/magnusja/maven' } + google() } } diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index a983556d..a57fab61 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ -#Fri May 26 22:12:57 PDT 2017 +#Fri Jan 12 22:53:10 PST 2018 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-3.3-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip diff --git a/httpserver/build.gradle b/httpserver/build.gradle index 90b9ad67..8a22e0ef 100644 --- a/httpserver/build.gradle +++ b/httpserver/build.gradle @@ -14,7 +14,6 @@ configurations { android { compileSdkVersion 25 - buildToolsVersion "25.0.2" defaultConfig { minSdkVersion 16 @@ -40,7 +39,7 @@ dependencies { compile 'com.koushikdutta.async:androidasync:2.+' compile fileTree(include: ['*.jar'], dir: 'libs') - compile 'com.android.support:support-annotations:25.1.0' + compile 'com.android.support:support-annotations:27.0.2' compile project(':libaums') } diff --git a/javafs/build.gradle b/javafs/build.gradle index af8e9263..46139e5e 100644 --- a/javafs/build.gradle +++ b/javafs/build.gradle @@ -2,7 +2,6 @@ apply plugin: 'com.android.library' android { compileSdkVersion 25 - buildToolsVersion "25.0.2" defaultConfig { minSdkVersion 16 diff --git a/libaums/build.gradle b/libaums/build.gradle index 648603d8..a9273742 100644 --- a/libaums/build.gradle +++ b/libaums/build.gradle @@ -14,7 +14,6 @@ configurations { android { compileSdkVersion 26 - buildToolsVersion "25.0.2" defaultConfig { minSdkVersion 16 @@ -56,8 +55,8 @@ dependencies { testCompile 'org.xenei:junit-contracts:0.1.7' testCompile 'org.mockito:mockito-core:2.7.22' - compile 'com.android.support:support-annotations:25.3.1' - javadocDeps 'com.android.support:support-annotations:25.3.1' + compile 'com.android.support:support-annotations:27.0.2' + javadocDeps 'com.android.support:support-annotations:27.0.2' } task bintray { diff --git a/libaums/src/main/java/com/github/mjdev/libaums/fs/UsbFileOutputStream.java b/libaums/src/main/java/com/github/mjdev/libaums/fs/UsbFileOutputStream.java index 2904761a..54f7262d 100644 --- a/libaums/src/main/java/com/github/mjdev/libaums/fs/UsbFileOutputStream.java +++ b/libaums/src/main/java/com/github/mjdev/libaums/fs/UsbFileOutputStream.java @@ -51,6 +51,7 @@ public void write(int oneByte) throws IOException { @Override public void close() throws IOException { + file.setLength(currentByteOffset); file.close(); } diff --git a/libaums/src/test/java/com/github/mjdev/libaums/fs/UsbFileOutputStreamTest.java b/libaums/src/test/java/com/github/mjdev/libaums/fs/UsbFileOutputStreamTest.java index af1b087a..33ec92ea 100644 --- a/libaums/src/test/java/com/github/mjdev/libaums/fs/UsbFileOutputStreamTest.java +++ b/libaums/src/test/java/com/github/mjdev/libaums/fs/UsbFileOutputStreamTest.java @@ -102,4 +102,16 @@ public void writeOffset() throws Exception { assertEquals(10, byteBufferCaptor.getValue().remaining()); } + + @Test + public void closeSetLength() throws Exception { + OutputStream os = new UsbFileOutputStream(file); + + os.write(new byte[20]); + os.close(); + verify(file).setLength(longCaptor.capture()); + + assertEquals(20, longCaptor.getValue().longValue()); + } + } \ No newline at end of file diff --git a/storageprovider/build.gradle b/storageprovider/build.gradle index a53f4190..1940a405 100644 --- a/storageprovider/build.gradle +++ b/storageprovider/build.gradle @@ -14,7 +14,6 @@ configurations { android { compileSdkVersion 25 - buildToolsVersion "25.0.2" defaultConfig { minSdkVersion 16