+ int dayOfMonth = operationIntent.getIntExtra(
+ EXTRA_SHARE_EXPIRATION_DAY_OF_MONTH, 1
+ );
+ Calendar expirationDate = Calendar.getInstance();
+ expirationDate.set(Calendar.YEAR, year);
+ expirationDate.set(Calendar.MONTH, monthOfYear);
+ expirationDate.set(Calendar.DAY_OF_MONTH, dayOfMonth);
+ ((UpdateShareViaLinkOperation)operation).setExpirationDate(
+ expirationDate
+ );
+
+ } else if (year < 0) {
+ // expiration date to be cleared
+ Calendar zeroDate = Calendar.getInstance();
+ zeroDate.clear();
+ ((UpdateShareViaLinkOperation)operation).setExpirationDate(
+ zeroDate
+ );
+
+ } // else, no update on expiration date
+ }
+
+ } else if (action.equals(ACTION_CREATE_SHARE_WITH_SHAREE)) {
+ // Create private share with user or group
+ String remotePath = operationIntent.getStringExtra(EXTRA_REMOTE_PATH);
+ String shareeName = operationIntent.getStringExtra(EXTRA_SHARE_WITH);
+ ShareType shareType = (ShareType) operationIntent.getSerializableExtra(EXTRA_SHARE_TYPE);
+ if (remotePath.length() > 0) {
+ operation = new CreateShareWithShareeOperation(
+ remotePath,
+ shareeName,
+ shareType
+ );
+ }