mirror of
				https://github.com/owncloud/android-library.git
				synced 2025-10-31 02:17:41 +00:00 
			
		
		
		
	Merge branch 'develop' into add_cookie_based_session_support
This commit is contained in:
		
						commit
						0071a97e8b
					
				| @ -2,9 +2,10 @@ language: java | |||||||
| jdk: oraclejdk7 | jdk: oraclejdk7 | ||||||
| before_install: | before_install: | ||||||
| - sudo apt-get update -qq | - sudo apt-get update -qq | ||||||
| - sudo apt-get install -qq libstdc++6:i386 lib32z1 | - sudo apt-get install -qq libstdc++6:i386 lib32z1 expect | ||||||
| - curl -3L https://raw.github.com/embarkmobile/android-sdk-installer/version-1/android-sdk-installer | - export LICENSES="android-sdk-license-5be876d5|android-sdk-license-598b93a6" | ||||||
|   | bash /dev/stdin --install=$COMPONENTS | - curl -3L https://raw.github.com/embarkmobile/android-sdk-installer/version-2/android-sdk-installer | ||||||
|  |   | bash /dev/stdin --install=$COMPONENTS --accept=$LICENSES | ||||||
| - source ~/.android-sdk-installer/env | - source ~/.android-sdk-installer/env | ||||||
| - echo no | android create avd --force -n test -t $ANDROID_TARGET --abi $ANDROID_ABI -c 20M | - echo no | android create avd --force -n test -t $ANDROID_TARGET --abi $ANDROID_ABI -c 20M | ||||||
| - emulator -avd test -no-skin -no-audio -no-window & | - emulator -avd test -no-skin -no-audio -no-window & | ||||||
| @ -24,4 +25,4 @@ env: | |||||||
|   - secure: aF4U20Xlu/rfrbxCmoJAiGh1doYTAZ10UEDmajuinT+ZGSJLivuqD7DDY/00sI6IXWg+J1vL+7jJm4JSYusHPg38UHZ4q92k6RmZycW2ATUzZnGT54O5FRnY67MfVwgVpIMK9UOL/6NEciBHEjlIOL0wbKQiJB++1YtBZOQLGL4= |   - secure: aF4U20Xlu/rfrbxCmoJAiGh1doYTAZ10UEDmajuinT+ZGSJLivuqD7DDY/00sI6IXWg+J1vL+7jJm4JSYusHPg38UHZ4q92k6RmZycW2ATUzZnGT54O5FRnY67MfVwgVpIMK9UOL/6NEciBHEjlIOL0wbKQiJB++1YtBZOQLGL4= | ||||||
|   - secure: N+ECSwNg8v2GsAFJ2y/tCiffauHDpN76zuFI2pDqf0fjmCtJZHu4BH5ArXBHjyHKmgn20a/8eZXcwJaH1HsJ80bo7vDJ2miShjGIQ90hPcdmUiB2XVJcew4f04CtvMDH5o7DRt4ykWArlbPL2rhVag0jotlSidolHBwRFnbDhDY= |   - secure: N+ECSwNg8v2GsAFJ2y/tCiffauHDpN76zuFI2pDqf0fjmCtJZHu4BH5ArXBHjyHKmgn20a/8eZXcwJaH1HsJ80bo7vDJ2miShjGIQ90hPcdmUiB2XVJcew4f04CtvMDH5o7DRt4ykWArlbPL2rhVag0jotlSidolHBwRFnbDhDY= | ||||||
|   matrix: |   matrix: | ||||||
|   - COMPONENTS=build-tools-19.0.3,android-19,sysimg-19 ANDROID_TARGET=android-19 ANDROID_ABI=armeabi-v7a |   - COMPONENTS=build-tools-20.0.0,android-19,sys-img-armeabi-v7a-android-19 ANDROID_TARGET=android-19 ANDROID_ABI=armeabi-v7a | ||||||
|  | |||||||
| @ -30,18 +30,20 @@ import org.apache.jackrabbit.webdav.MultiStatusResponse; | |||||||
| import org.apache.jackrabbit.webdav.property.DavProperty; | import org.apache.jackrabbit.webdav.property.DavProperty; | ||||||
| import org.apache.jackrabbit.webdav.property.DavPropertyName; | import org.apache.jackrabbit.webdav.property.DavPropertyName; | ||||||
| import org.apache.jackrabbit.webdav.property.DavPropertySet; | import org.apache.jackrabbit.webdav.property.DavPropertySet; | ||||||
| 
 | import org.apache.jackrabbit.webdav.xml.Namespace; | ||||||
| 
 |  | ||||||
| 
 |  | ||||||
| 
 | 
 | ||||||
| import android.net.Uri; | import android.net.Uri; | ||||||
| import android.util.Log; | import android.util.Log; | ||||||
| 
 | 
 | ||||||
| public class WebdavEntry { | public class WebdavEntry { | ||||||
|     private String mName, mPath, mUri, mContentType, mEtag; | 	private static final String NAMESPACE_OC = "http://owncloud.org/ns"; | ||||||
|     private long mContentLength, mCreateTimestamp, mModifiedTimestamp; | 	private static final String EXTENDED_PROPERTY_NAME_PERMISSIONS = "permissions"; | ||||||
|  | 	private static final String EXTENDED_PROPERTY_NAME_REMOTE_ID = "id"; | ||||||
| 
 | 
 | ||||||
|     public WebdavEntry(MultiStatusResponse ms, String splitElement) { | 	private String mName, mPath, mUri, mContentType, mEtag, mPermissions, mRemoteId; | ||||||
|  | 	private long mContentLength, mCreateTimestamp, mModifiedTimestamp; | ||||||
|  | 
 | ||||||
|  | 	public WebdavEntry(MultiStatusResponse ms, String splitElement) { | ||||||
|         resetData(); |         resetData(); | ||||||
|         if (ms.getStatus().length != 0) { |         if (ms.getStatus().length != 0) { | ||||||
|             mUri = ms.getHref(); |             mUri = ms.getHref(); | ||||||
| @ -106,6 +108,22 @@ public class WebdavEntry { | |||||||
|                 mEtag = mEtag.substring(1, mEtag.length()-1); |                 mEtag = mEtag.substring(1, mEtag.length()-1); | ||||||
|             } |             } | ||||||
| 
 | 
 | ||||||
|  |             // OC permissions property <oc:permissions> | ||||||
|  |             prop = propSet.get( | ||||||
|  |             		EXTENDED_PROPERTY_NAME_PERMISSIONS, Namespace.getNamespace(NAMESPACE_OC) | ||||||
|  |     		); | ||||||
|  |             if (prop != null) { | ||||||
|  |                 mPermissions = prop.getValue().toString(); | ||||||
|  |             } | ||||||
|  | 
 | ||||||
|  |             // OC remote id property <oc:id> | ||||||
|  |             prop = propSet.get( | ||||||
|  |             		EXTENDED_PROPERTY_NAME_REMOTE_ID, Namespace.getNamespace(NAMESPACE_OC) | ||||||
|  |     		); | ||||||
|  |             if (prop != null) { | ||||||
|  |                 mRemoteId = prop.getValue().toString(); | ||||||
|  |             } | ||||||
|  | 
 | ||||||
|         } else { |         } else { | ||||||
|             Log.e("WebdavEntry", |             Log.e("WebdavEntry", | ||||||
|                     "General fuckup, no status for webdav response"); |                     "General fuckup, no status for webdav response"); | ||||||
| @ -152,8 +170,16 @@ public class WebdavEntry { | |||||||
|         return mEtag; |         return mEtag; | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|  |     public String permissions() { | ||||||
|  |         return mPermissions; | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     public String remoteId() { | ||||||
|  |         return mRemoteId; | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|     private void resetData() { |     private void resetData() { | ||||||
|         mName = mUri = mContentType = null; |         mName = mUri = mContentType = mPermissions = null; mRemoteId = null; | ||||||
|         mContentLength = mCreateTimestamp = mModifiedTimestamp = 0; |         mContentLength = mCreateTimestamp = mModifiedTimestamp = 0; | ||||||
|     } |     } | ||||||
| } | } | ||||||
|  | |||||||
| @ -57,7 +57,7 @@ public class WebdavUtils { | |||||||
|         Date returnDate = null; |         Date returnDate = null; | ||||||
|         for (int i = 0; i < DATETIME_FORMATS.length; ++i) { |         for (int i = 0; i < DATETIME_FORMATS.length; ++i) { | ||||||
|             try { |             try { | ||||||
|                 returnDate = new SimpleDateFormat (DATETIME_FORMATS[i]).parse(date); |                 returnDate = new SimpleDateFormat (DATETIME_FORMATS[i], Locale.US).parse(date); | ||||||
|                 return returnDate; |                 return returnDate; | ||||||
|             } catch (ParseException e) { |             } catch (ParseException e) { | ||||||
|             } |             } | ||||||
|  | |||||||
| @ -163,6 +163,8 @@ public class ReadRemoteFolderOperation extends RemoteOperation { | |||||||
|         file.setMimeType(we.contentType()); |         file.setMimeType(we.contentType()); | ||||||
|         file.setModifiedTimestamp(we.modifiedTimestamp()); |         file.setModifiedTimestamp(we.modifiedTimestamp()); | ||||||
|         file.setEtag(we.etag()); |         file.setEtag(we.etag()); | ||||||
|  |         file.setPermissions(we.permissions()); | ||||||
|  |         file.setRemoteId(we.remoteId()); | ||||||
|         return file; |         return file; | ||||||
|     } |     } | ||||||
| } | } | ||||||
|  | |||||||
| @ -48,7 +48,9 @@ public class RemoteFile implements Parcelable, Serializable { | |||||||
| 	private long mCreationTimestamp; | 	private long mCreationTimestamp; | ||||||
| 	private long mModifiedTimestamp; | 	private long mModifiedTimestamp; | ||||||
| 	private String mEtag; | 	private String mEtag; | ||||||
| 	 | 	private String mPermissions; | ||||||
|  | 	private String mRemoteId; | ||||||
|  | 
 | ||||||
| 	/**  | 	/**  | ||||||
| 	 * Getters and Setters | 	 * Getters and Setters | ||||||
| 	 */ | 	 */ | ||||||
| @ -101,6 +103,22 @@ public class RemoteFile implements Parcelable, Serializable { | |||||||
| 		this.mEtag = etag; | 		this.mEtag = etag; | ||||||
| 	} | 	} | ||||||
| 	 | 	 | ||||||
|  | 	public String getPermissions() { | ||||||
|  | 		return mPermissions; | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
|  | 	public void setPermissions(String permissions) { | ||||||
|  | 		this.mPermissions = permissions; | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
|  | 	public String getRemoteId() { | ||||||
|  | 		return mRemoteId; | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
|  | 	public void setRemoteId(String remoteId) { | ||||||
|  | 		this.mRemoteId = remoteId; | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
| 	public RemoteFile() { | 	public RemoteFile() { | ||||||
| 		resetData(); | 		resetData(); | ||||||
| 	} | 	} | ||||||
| @ -127,6 +145,8 @@ public class RemoteFile implements Parcelable, Serializable { | |||||||
|         this.setMimeType(we.contentType()); |         this.setMimeType(we.contentType()); | ||||||
|         this.setModifiedTimestamp(we.modifiedTimestamp()); |         this.setModifiedTimestamp(we.modifiedTimestamp()); | ||||||
|         this.setEtag(we.etag()); |         this.setEtag(we.etag()); | ||||||
|  |         this.setPermissions(we.permissions()); | ||||||
|  |         this.setRemoteId(we.remoteId()); | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	/** | 	/** | ||||||
| @ -139,6 +159,8 @@ public class RemoteFile implements Parcelable, Serializable { | |||||||
|         mCreationTimestamp = 0; |         mCreationTimestamp = 0; | ||||||
|         mModifiedTimestamp = 0; |         mModifiedTimestamp = 0; | ||||||
|         mEtag = null; |         mEtag = null; | ||||||
|  |         mPermissions = null; | ||||||
|  |         mRemoteId = null; | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|     /**  |     /**  | ||||||
| @ -173,6 +195,8 @@ public class RemoteFile implements Parcelable, Serializable { | |||||||
|         mCreationTimestamp = source.readLong(); |         mCreationTimestamp = source.readLong(); | ||||||
|         mModifiedTimestamp = source.readLong(); |         mModifiedTimestamp = source.readLong(); | ||||||
|         mEtag = source.readString(); |         mEtag = source.readString(); | ||||||
|  |         mPermissions= source.readString(); | ||||||
|  |         mRemoteId = source.readString(); | ||||||
|     } |     } | ||||||
|      |      | ||||||
| 	@Override | 	@Override | ||||||
| @ -187,7 +211,9 @@ public class RemoteFile implements Parcelable, Serializable { | |||||||
| 		dest.writeLong(mLength); | 		dest.writeLong(mLength); | ||||||
| 		dest.writeLong(mCreationTimestamp); | 		dest.writeLong(mCreationTimestamp); | ||||||
| 		dest.writeLong(mModifiedTimestamp); | 		dest.writeLong(mModifiedTimestamp); | ||||||
| 		dest.writeString(mEtag);		 | 		dest.writeString(mEtag); | ||||||
|  | 		dest.writeString(mPermissions); | ||||||
|  | 		dest.writeString(mRemoteId); | ||||||
| 	} | 	} | ||||||
|      |      | ||||||
|      |      | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user