OC-1196 OC-1195: Obtain etag from de Server and save it
authormasensio <masensio@solidgear.es>
Thu, 5 Sep 2013 11:06:00 +0000 (13:06 +0200)
committermasensio <masensio@solidgear.es>
Thu, 5 Sep 2013 11:06:00 +0000 (13:06 +0200)
src/com/owncloud/android/operations/SynchronizeFileOperation.java
src/com/owncloud/android/operations/SynchronizeFolderOperation.java
src/eu/alefzero/webdav/WebdavEntry.java

index b0f2ce2..3022a53 100644 (file)
@@ -215,6 +215,8 @@ public class SynchronizeFileOperation extends RemoteOperation {
         file.setFileLength(we.contentLength());
         file.setMimetype(we.contentType());
         file.setModificationTimestamp(we.modifiedTimestamp());
+        file.setEtag(we.etag());
+        
         return file;
     }
 
index b08b2be..fae21a8 100644 (file)
@@ -286,6 +286,7 @@ public class SynchronizeFolderOperation extends RemoteOperation {
         file.setMimetype(we.contentType());
         file.setModificationTimestamp(we.modifiedTimestamp());
         file.setParentId(mParentId);
+        file.setEtag(we.etag());
         return file;
     }
     
index 46923c6..29264a4 100644 (file)
@@ -28,7 +28,7 @@ import com.owncloud.android.Log_OC;
 import android.net.Uri;
 
 public class WebdavEntry {
-    private String mName, mPath, mUri, mContentType;
+    private String mName, mPath, mUri, mContentType, mEtag;
     private long mContentLength, mCreateTimestamp, mModifiedTimestamp;
 
     public WebdavEntry(MultiStatusResponse ms, String splitElement) {
@@ -87,6 +87,10 @@ public class WebdavEntry {
                         .parseResponseDate((String) prop.getValue());
                 mCreateTimestamp = (d != null) ? d.getTime() : 0;
             }
+            
+            prop = propSet.get(DavPropertyName.GETETAG);
+            if (prop != null)
+                mEtag = (String) prop.getValue();
 
         } else {
             Log_OC.e("WebdavEntry",
@@ -129,6 +133,10 @@ public class WebdavEntry {
     public long modifiedTimestamp() {
         return mModifiedTimestamp;
     }
+    
+    public String etag() {
+        return mEtag;
+    }
 
     private void resetData() {
         mName = mUri = mContentType = null;