List of usage examples for io.vertx.core.json JsonArray JsonArray
public JsonArray()
From source file:de.braintags.netrelay.controller.filemanager.elfinder.command.impl.AbstractCommand.java
License:Open Source License
protected JsonArray buildJsonFilesArray(ElFinderContext efContext, ITarget target) { JsonArray returnArray = new JsonArray(); returnArray.add(getTargetInfo(efContext, target)); return returnArray; }
From source file:de.braintags.netrelay.controller.filemanager.elfinder.command.impl.AbstractCommand.java
License:Open Source License
protected JsonArray buildJsonFilesArray(ElFinderContext efContext, Collection<ITarget> targetList) { JsonArray returnArray = new JsonArray(); targetList.forEach(target -> returnArray.add(getTargetInfo(efContext, target))); return returnArray; }
From source file:de.braintags.netrelay.controller.filemanager.elfinder.command.impl.AbstractCommand.java
License:Open Source License
protected JsonObject getOptions(ElFinderContext efContext, ITarget target) { JsonObject options = new JsonObject(); options.put(ElFinderConstants.ELFINDER_PARAMETER_PATH, target.getName()); options.put(ElFinderConstants.ELFINDER_PARAMETER_COMMAND_DISABLED, new JsonArray()); options.put(ElFinderConstants.ELFINDER_PARAMETER_FILE_SEPARATOR, ElFinderConstants.ELFINDER_PARAMETER_FILE_SEPARATOR); options.put(ElFinderConstants.ELFINDER_PARAMETER_OVERWRITE_FILE, ElFinderConstants.ELFINDER_TRUE_RESPONSE); // options.put(ElFinderConstants.ELFINDER_PARAMETER_ARCHIVERS, ArchiverOption.JSON_INSTANCE); return options; }
From source file:de.braintags.netrelay.controller.filemanager.elfinder.command.impl.MkdirCommand.java
License:Open Source License
@Override public void execute(ElFinderContext efContext, JsonObject json, Handler<AsyncResult<ITarget>> handler) { final String targetHash = efContext.getParameter(ElFinderConstants.ELFINDER_PARAMETER_TARGET); final String fileName = efContext.getParameter(ElFinderConstants.ELFINDER_PARAMETER_NAME); ITarget target = findTarget(efContext, targetHash); ITarget newFile = target.createChildTarget(fileName); newFile.createFolder();// ww w . j a va 2 s. c om JsonObject jo = getTargetInfo(efContext, newFile); json.put(ElFinderConstants.ELFINDER_JSON_RESPONSE_ADDED, new JsonArray().add(jo)); handler.handle(createFuture(newFile)); }
From source file:de.braintags.netrelay.controller.filemanager.elfinder.command.impl.MkfileCommand.java
License:Open Source License
@Override public void execute(ElFinderContext efContext, JsonObject json, Handler<AsyncResult<ITarget>> handler) { final String targetHash = efContext.getParameter(ElFinderConstants.ELFINDER_PARAMETER_TARGET); final String fileName = efContext.getParameter(ElFinderConstants.ELFINDER_PARAMETER_NAME); ITarget target = findTarget(efContext, targetHash); if (target == null) { throw new IllegalArgumentException("Folder does not exist: " + efContext.translateHash(targetHash)); }// w w w. ja v a 2 s . c om ITarget newFile = target.createChildTarget(fileName); newFile.createFile(); JsonObject jo = getTargetInfo(efContext, newFile); json.put(ElFinderConstants.ELFINDER_JSON_RESPONSE_ADDED, new JsonArray().add(jo)); handler.handle(createFuture(newFile)); }
From source file:de.braintags.netrelay.controller.filemanager.elfinder.command.impl.OpenCommand.java
License:Open Source License
@Override public void execute(ElFinderContext efContext, JsonObject json, Handler<AsyncResult<Map<String, ITarget>>> handler) { RoutingContext context = efContext.getRoutingContext(); boolean init = context.request().getParam(ElFinderConstants.ELFINDER_PARAMETER_INIT) != null; boolean tree = context.request().getParam(ElFinderConstants.ELFINDER_PARAMETER_TREE) != null; String target = context.request().getParam(ElFinderConstants.ELFINDER_PARAMETER_TARGET); if (init) {/*from w ww . j a v a2 s.com*/ json.put(ElFinderConstants.ELFINDER_PARAMETER_API, ElFinderConstants.ELFINDER_VERSION_API); json.put(ElFinderConstants.ELFINDER_PARAMETER_NETDRIVERS, new JsonArray()); } Map<String, ITarget> files = new LinkedHashMap<>(); if (tree) { for (IVolume root : efContext.getRootVolumes()) { ITarget rootTarget = root.getRoot(); String hash = ElFinderContext.getHash(rootTarget); files.put(hash, rootTarget); addSubFolders(efContext, files, rootTarget); } } ITarget cwd = findCwd(efContext, target); files.put(cwd.getHash(), cwd); addChildren(efContext, files, cwd); json.put(ElFinderConstants.ELFINDER_PARAMETER_FILES, buildJsonFilesArray(efContext, files.values())); json.put(ElFinderConstants.ELFINDER_PARAMETER_CWD, getTargetInfo(efContext, cwd)); json.put(ElFinderConstants.ELFINDER_PARAMETER_OPTIONS, getOptions(efContext, cwd)); handler.handle(createFuture(files)); }
From source file:de.braintags.netrelay.controller.filemanager.elfinder.command.impl.PasteCommand.java
License:Open Source License
@Override public void execute(ElFinderContext efContext, JsonObject json, Handler<AsyncResult<List<ITarget>>> handler) { List<String> targets = efContext.getParameterValues(ElFinderConstants.ELFINDER_PARAMETER_TARGETS); List<String> renames = efContext.getParameterValues(ElFinderConstants.ELFINDER_PARAMETER_RENAMES); final String destination = efContext.getParameter(ElFinderConstants.ELFINDER_PARAMETER_FILE_DESTINATION); final String src = efContext.getParameter(ElFinderConstants.ELFINDER_PARAMETER_SRC); final boolean cut = INT_CUT.equals(efContext.getParameter(ElFinderConstants.ELFINDER_PARAMETER_CUT)); List<ITarget> added = new ArrayList<>(); List<String> removed = new ArrayList<>(); ITarget vhDst = findTarget(efContext, destination); for (String target : targets) { ITarget vhTarget = findTarget(efContext, target); final String name = vhTarget.getName(); ITarget newFile = vhDst.createChildTarget(name); createAndCopy(vhTarget, newFile); added.add(newFile);/* w ww .j av a 2s. c o m*/ if (cut) { vhTarget.delete(); removed.add(vhTarget.getHash()); } } json.put(ElFinderConstants.ELFINDER_JSON_RESPONSE_ADDED, buildJsonFilesArray(efContext, added)); JsonArray returnArray = new JsonArray(); removed.forEach(target -> returnArray.add(target)); json.put(ElFinderConstants.ELFINDER_JSON_RESPONSE_REMOVED, returnArray); handler.handle(createFuture(added)); }
From source file:de.braintags.netrelay.controller.filemanager.elfinder.command.impl.RenameCommand.java
License:Open Source License
@Override public void execute(ElFinderContext efContext, JsonObject json, Handler<AsyncResult<ITarget>> handler) { final String target = efContext.getParameter(ElFinderConstants.ELFINDER_PARAMETER_TARGET); final String newName = efContext.getParameter(ElFinderConstants.ELFINDER_PARAMETER_NAME); ITarget source = findTarget(efContext, target); ITarget destination = source.getParent().createChildTarget(newName); source.rename(destination);/*w ww . java2 s . c o m*/ JsonArray result = new JsonArray(); result.add(getTargetInfo(efContext, destination)); json.put(ElFinderConstants.ELFINDER_JSON_RESPONSE_ADDED, result); result = new JsonArray(); result.add(target); json.put(ElFinderConstants.ELFINDER_JSON_RESPONSE_REMOVED, result); handler.handle(createFuture(destination)); }
From source file:de.braintags.netrelay.controller.filemanager.elfinder.command.impl.RmCommand.java
License:Open Source License
@Override public void execute(ElFinderContext efContext, JsonObject json, Handler<AsyncResult<List<ITarget>>> handler) { List<String> targets = efContext.getParameterValues(ElFinderConstants.ELFINDER_PARAMETER_TARGETS); JsonArray removed = new JsonArray(); List<ITarget> rmTargets = new ArrayList<>(); for (String ts : targets) { ITarget target = findTarget(efContext, ts); if (!target.isFolder() || checkEmptyDirectory(target)) { target.delete();// w ww. j a v a 2 s .c o m removed.add(target.getHash()); rmTargets.add(target); } else { json.put(ElFinderConstants.ELFINDER_JSON_RESPONSE_ERROR, "Directory not empty: " + target.getPath()); } } json.put(ElFinderConstants.ELFINDER_JSON_RESPONSE_REMOVED, removed); handler.handle(createFuture(rmTargets)); }
From source file:de.braintags.netrelay.controller.filemanager.elfinder.command.impl.SearchCommand.java
License:Open Source License
@Override public void execute(ElFinderContext efContext, JsonObject json, Handler<AsyncResult<List<ITarget>>> handler) { final String query = efContext.getParameter(ElFinderConstants.ELFINDER_PARAMETER_SEARCH_QUERY); List<ITarget> found = new ArrayList<>(); try {/*from www. j a v a2 s.c o m*/ JsonArray objects = new JsonArray(); List<IVolume> volumes = efContext.getRootVolumes(); for (IVolume volume : volumes) { // checks volume security ITarget volumeRoot = volume.getRoot(); // search only in volumes that are readable if (volumeRoot.isReadable()) { // search for targets List<ITarget> targets = volume.search(query); if (targets != null) { // adds targets info in the return list targets.forEach(target -> objects.add(getTargetInfo(efContext, target))); } found.addAll(targets); } } json.put(ElFinderConstants.ELFINDER_PARAMETER_FILES, objects); } catch (Exception e) { json.put(ElFinderConstants.ELFINDER_JSON_RESPONSE_ERROR, "Unable to search! Error: " + e); } handler.handle(createFuture(found)); }