Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Unverified Commit 040dfeb8 authored by tobiasKaminsky's avatar tobiasKaminsky Committed by AndyScherzinger
Browse files

Add support for richdocuments capabilities

parent 699a9ddf
Loading
Loading
Loading
Loading
+21 −0
Original line number Diff line number Diff line
@@ -133,6 +133,10 @@ public class GetRemoteCapabilitiesOperation extends RemoteOperation {
    // v1 client side encryption
    private static final String NODE_END_TO_END_ENCRYPTION = "end-to-end-encryption";
    
    // Richdocuments
    private static final String NODE_RICHDOCUMENTS = "richdocuments";
    private static final String NODE_MIMETYPES = "mimetypes";

    // activity
    private static final String NODE_ACTIVITY = "activity";

@@ -397,6 +401,23 @@ public class GetRemoteCapabilitiesOperation extends RemoteOperation {
                        } else {
                            capability.setActivity(CapabilityBooleanType.FALSE);
                        }
                        
                        if (respCapabilities.has(NODE_RICHDOCUMENTS)) {
                            capability.setRichDocuments(CapabilityBooleanType.TRUE);

                            JSONArray mimeTypesArray = respCapabilities.getJSONObject(NODE_RICHDOCUMENTS)
                                    .getJSONArray(NODE_MIMETYPES);
                            
                            ArrayList<String> mimeTypes = new ArrayList<>();

                            for (int i=0; i < mimeTypesArray.length(); i++) {
                                mimeTypes.add(mimeTypesArray.getString(i));
                            }
                            
                            capability.setRichDocumentsMimeTypeList(mimeTypes);
                        } else {
                            capability.setRichDocuments(CapabilityBooleanType.FALSE);
                        }
                    }
                    
                    // Result
+27 −1
Original line number Diff line number Diff line
@@ -24,6 +24,9 @@
 */
package com.owncloud.android.lib.resources.status;

import java.util.ArrayList;
import java.util.List;

/**
 * Contains data of the Capabilities for an account, from the Capabilities API
 */
@@ -91,6 +94,10 @@ public class OCCapability {

    private CapabilityBooleanType mEndToEndEncryption;
    
    // Richdocuments
    private CapabilityBooleanType mRichdocuments;
    private List<String> mRichdocumentsMimeTypeList;

    private CapabilityBooleanType mActivity;

    public OCCapability() {
@@ -140,6 +147,9 @@ public class OCCapability {
        mEndToEndEncryption = CapabilityBooleanType.UNKNOWN;

        mActivity = CapabilityBooleanType.UNKNOWN;
        
        mRichdocuments = CapabilityBooleanType.UNKNOWN;
        mRichdocumentsMimeTypeList = new ArrayList<>();
    }


@@ -469,4 +479,20 @@ public class OCCapability {
    public void setActivity(CapabilityBooleanType mActivity) {
        this.mActivity = mActivity;
    }

    public CapabilityBooleanType getRichDocuments() {
        return mRichdocuments;
    }
    
    public void setRichDocuments(CapabilityBooleanType richdocuments) {
        mRichdocuments = richdocuments;
    }
    
    public List<String> getRichDocumentsMimeTypeList() {
        return mRichdocumentsMimeTypeList;
    }
    
    public void setRichDocumentsMimeTypeList(List<String> mimeTypeList) {
        mRichdocumentsMimeTypeList = mimeTypeList;
    }
}