![JAR search and dependency download from the Maven repository](/logo.png)
org.cassproject.general.repository.EcFile Maven / Gradle / Ivy
package org.cassproject.general.repository;
import org.cassproject.ebac.repository.EcEncryptedValue;
import org.cassproject.ebac.repository.EcRepository;
import org.cassproject.schema.general.EcRemoteLinkedData;
import org.stjs.javascript.Array;
import org.stjs.javascript.Global;
import org.stjs.javascript.JSCollections;
import org.stjs.javascript.functions.Callback1;
import org.stjs.javascript.functions.Function0;
/**
* Implementation of a file with methods for communicating with repository services
*
* @author [email protected]
* @module com.eduworks.ec
* @class EcFile
* @extends GeneralFile
* @constructor
*/
public class EcFile extends GeneralFile {
/**
* Factory method for creating a file with certain values
*
* @param {String} name
* Name of the file to be created
* @param {String} base64Data
* Base 64 encoded file data
* @param {String} mimeType
* MIME Type of the file
* @return {EcFile}
* The file created
* @memberOf EcFile
* @method create
* @static
*/
public static EcFile create(String name, String base64Data, String mimeType) {
EcFile f = new EcFile();
f.data = base64Data;
f.name = name;
f.mimeType = mimeType;
return f;
}
/**
* Retrieves a file from the server specified by it's ID
*
* @param {String} id
* ID of the file data to be retrieved
* @param {Callback1} success
* Callback triggered if successfully retrieved from the server,
* returns the retrieved file
* @param {Callback1} failure
* Callback triggered if error occurs while retrieving file from server
* @memberOf EcFile
* @method get
* @static
*/
public static void get(String id, final Callback1 success, final Callback1 failure) {
EcRepository.getAs(id,new EcFile(),success,failure);
}
public static EcFile getBlocking(String id) {
return EcRepository.getBlockingAs(id,new EcFile());
}
/**
* Searches the repository given for files that match the query passed in
*
* @param {EcRepository} repo
* Repository to search for files
* @param {String} query
* Query to user for search
* @param {Callback1 success
* Callback triggered after search completes,
* returns results
* @param {Callback1} failure
* Callback triggered if error occurs while searching
* @param {Object} paramObj
* Parameters to pass to search
* @memberOf EcFile
* @method search
* @static
*/
public static void search(EcRepository repo, String query, final Callback1> success, Callback1 failure, Object paramObj) {
EcRepository.searchAs(repo, query, new Function0() {
@Override
public Object $invoke() {
return new EcFile();
}
},(Callback1)(Object)success,failure,paramObj);
}
/**
* Saves this file in the repository using the repository web services
*
* @param {Callback1} success
* Callback triggered if successfully saved
* @param {Callback1} failure
* Callback triggered if error occurs while saving
* @memberOf EcFile
* @method save
*/
public void save(final Callback1 success, Callback1 failure) {
if (this.name == null || this.name == "") {
String msg = "File Name can not be empty";
if (failure != null)
failure.$invoke(msg);
else
Global.console.error(msg);
return;
}
EcRepository.save(this, success, failure);
}
/**
* Deletes the file from the repository using repository web services
*
* @param {Callback1} success
* Callback triggered if successfully deleted
* @param {Callback1} failure
* Callback triggered if error occurs while deleting
* @memberOf EcFile
* @method _delete
*/
public void _delete(EcRepository repo, final Callback1 success, final Callback1 failure) {
repo.DELETE(this, success, failure);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy