OC-2967: Grant that files are downloaded automatically when the action is triggered...
[pub/Android/ownCloud.git] / src / com / owncloud / android / files / FileOperationsHelper.java
index 39108db..82e0aaa 100644 (file)
@@ -22,7 +22,6 @@ import org.apache.http.protocol.HTTP;
 import android.accounts.AccountManager;
 import android.content.Intent;
 import android.net.Uri;
 import android.accounts.AccountManager;
 import android.content.Intent;
 import android.net.Uri;
-import android.sax.StartElementListener;
 import android.support.v4.app.DialogFragment;
 import android.webkit.MimeTypeMap;
 import android.widget.Toast;
 import android.support.v4.app.DialogFragment;
 import android.webkit.MimeTypeMap;
 import android.widget.Toast;
@@ -31,9 +30,6 @@ import com.owncloud.android.R;
 import com.owncloud.android.datamodel.OCFile;
 import com.owncloud.android.lib.accounts.OwnCloudAccount;
 import com.owncloud.android.lib.network.webdav.WebdavUtils;
 import com.owncloud.android.datamodel.OCFile;
 import com.owncloud.android.lib.accounts.OwnCloudAccount;
 import com.owncloud.android.lib.network.webdav.WebdavUtils;
-import com.owncloud.android.lib.operations.common.ShareType;
-import com.owncloud.android.operations.CreateShareOperation;
-import com.owncloud.android.operations.UnshareLinkOperation;
 import com.owncloud.android.services.OperationsService;
 import com.owncloud.android.ui.activity.FileActivity;
 import com.owncloud.android.ui.dialog.ActivityChooserDialog;
 import com.owncloud.android.services.OperationsService;
 import com.owncloud.android.ui.activity.FileActivity;
 import com.owncloud.android.ui.dialog.ActivityChooserDialog;
@@ -143,19 +139,18 @@ public class FileOperationsHelper {
         }
         return false;
     }
         }
         return false;
     }
-
+    
     
     public void unshareFileWithLink(OCFile file, FileActivity callerActivity) {
         
         if (isSharedSupported(callerActivity)) {
             // Unshare the file
     
     public void unshareFileWithLink(OCFile file, FileActivity callerActivity) {
         
         if (isSharedSupported(callerActivity)) {
             // Unshare the file
-            UnshareLinkOperation unshare = new UnshareLinkOperation(file, callerActivity);
-            unshare.execute(callerActivity.getStorageManager(), 
-                    callerActivity, 
-                    callerActivity.getRemoteOperationListener(), 
-                    callerActivity.getHandler(), 
-                    callerActivity);
-         
+            Intent service = new Intent(callerActivity, OperationsService.class);
+            service.setAction(OperationsService.ACTION_UNSHARE);
+            service.putExtra(OperationsService.EXTRA_ACCOUNT, callerActivity.getAccount());
+            service.putExtra(OperationsService.EXTRA_REMOTE_PATH, file.getRemotePath());
+            callerActivity.startService(service);
+            
             callerActivity.showLoadingDialog();
             
         } else {
             callerActivity.showLoadingDialog();
             
         } else {
@@ -165,4 +160,25 @@ public class FileOperationsHelper {
             
         }
     }
             
         }
     }
+    
+    public void sendFile(OCFile file, FileActivity callerActivity) {
+        // Obtain the file
+        if (!file.isDown()) {  // Download the file
+            Log_OC.d(TAG, file.getRemotePath() + " : File must be downloaded");           
+        } else {
+            sendDownloadedFile(file, callerActivity);
+        }
+        
+        
+    }
+    
+    public void sendDownloadedFile(OCFile file, FileActivity callerActivity) {
+        Intent sharingIntent = new Intent(android.content.Intent.ACTION_SEND);
+        // set MimeType
+        sharingIntent.setType(file.getMimetype());
+        sharingIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse("file://" + file.getStoragePath()));
+        callerActivity.startActivity(Intent.createChooser(sharingIntent, callerActivity.getString(R.string.send_file_title_intent))); 
+    }
+
+    
 }
 }