--- /dev/null
+/*****************************************************************************
+ * Copyright Igor Barma, Eric Brun, Alexandre Desoubeaux, Christian Martel,
+ * (2 décembre 2008)
+ *
+ * Ce logiciel est un programme informatique servant à l'évaluation des
+ * compétences.
+ *
+ * Ce logiciel est régi par la licence CeCILL soumise au droit français et
+ * respectant les principes de diffusion des logiciels libres. Vous pouvez
+ * utiliser, modifier et/ou redistribuer ce programme sous les conditions
+ * de la licence CeCILL telle que diffusée par le CEA, le CNRS et l'INRIA
+ * sur le site "http://www.cecill.info".
+ *
+ * En contrepartie de l'accessibilité au code source et des droits de copie,
+ * de modification et de redistribution accordés par cette licence, il n'est
+ * offert aux utilisateurs qu'une garantie limitée. Pour les mêmes raisons,
+ * seule une responsabilité restreinte pèse sur l'auteur du programme, le
+ * titulaire des droits patrimoniaux et les concédants successifs.
+ *
+ * A cet égard l'attention de l'utilisateur est attirée sur les risques
+ * associés au chargement, à l'utilisation, à la modification et/ou au
+ * développement et à la reproduction du logiciel par l'utilisateur étant
+ * donné sa spécificité de logiciel libre, qui peut le rendre complexe à
+ * manipuler et qui le réserve donc à des développeurs et des professionnels
+ * avertis possédant des connaissances informatiques approfondies. Les
+ * utilisateurs sont donc invités à charger et tester l'adéquation du
+ * logiciel à leurs besoins dans des conditions permettant d'assurer la
+ * sécurité de leurs systèmes et ou de leurs données et, plus généralement,
+ * à l'utiliser et l'exploiter dans les mêmes conditions de sécurité.
+ *
+ * Le fait que vous puissiez accéder à cet en-tête signifie que vous avez
+ * pris connaissance de la licence CeCILL, et que vous en avez accepté les
+ * termes.
+ *******************************************************************************/
+package com.pentila.evalcomp.manager;
+
+import java.io.ByteArrayInputStream;
+import java.io.InputStream;
+import java.util.Date;
+import java.util.HashSet;
+import java.util.Map;
+import java.util.Map.Entry;
+import java.util.Set;
+
+import com.pentila.evalcomp.dao.IRessourceCertDAO;
+import com.pentila.evalcomp.dao.IRessourceDAO;
+import com.pentila.evalcomp.dao.IRessourceDefinitionDAO;
+import com.pentila.evalcomp.domain.Ressource;
+import com.pentila.evalcomp.domain.RessourceDefinition;
+import com.pentila.evalcomp.domain.User;
+import com.pentila.evalcomp.domain.certification.RessourceCert;
+import com.pentila.evalcomp.domain.instance.EvaluationSubjectInstance;
+import com.pentila.evalcomp.domain.transit.RessourceFile;
+import com.pentila.evalcomp.domain.transit.RessourceFolder;
+import com.pentila.evalcomp.domain.transit.RessourceItem;
+import com.pentila.evalcomp.manager.interfacedef.IRessourceBase;
+import com.pentila.evalcomp.manager.ressource.IRessourcePlugin;
+
+// TODO: Auto-generated Javadoc
+/**
+ * The Class RessourceManager.
+ */
+public class RessourceManager implements IRessourceBase {
+
+ /** The evaluation directory. */
+ private String evaluationDirectory = "_eval";
+
+
+ /** The storage. */
+ private Map<String, IRessourcePlugin> plugins;
+
+ /** The ressource dao. */
+ IRessourceDAO ressourceDAO;
+
+ /** The ressource definition dao. */
+ IRessourceDefinitionDAO ressourceDefinitionDAO;
+
+ /** The ressource cert dao. */
+ IRessourceCertDAO ressourceCertDAO;
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see com.pentila.evalcomp.manager.nn#addFolder(java.lang.String,
+ * java.lang.String, java.lang.String)
+ */
+ public RessourceItem addFolder(RessourceItem ri, String login) {
+
+ IRessourcePlugin plugin = getPlugin(ri);
+
+ return plugin.addFolder(ri, login);
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @seecom.pentila.evalcomp.manager.interfacedef.IRessourceBase#
+ * addRessourceDefinition
+ * (com.pentila.evalcomp.domain.definition.RessourceDefinition)
+ */
+ public RessourceDefinition addRessourceDefinition(RessourceDefinition rd) {
+ // TODO Auto-generated method stub
+
+ IRessourcePlugin plugin = getPlugin(rd.getPluginKey());
+
+ String login = rd.getOwner().getUid();
+
+
+ RessourceFile ri = new RessourceFile();
+ ri.setName(rd.getName());
+ ri.setRessourceKey(rd.getPath());
+
+ String path = String.format("EVALDEF-%d/EVALSUB-%d/%s", rd.getEvaluationSubject().getEvaluationDefinition().getId(), rd.getEvaluationSubject().getId(), rd.getActivityId());
+ path = login + evaluationDirectory + "/" + path;
+ String[] ret = plugin.copyRessource(ri, path, login);
+
+ rd.setName(ret[1]);
+ rd.setPath(ret[0]);
+
+ RessourceDefinition rr = ressourceDefinitionDAO.saveOrUpdate(rd);
+ return rr;
+ }
+
+ /* (non-Javadoc)
+ * @see com.pentila.evalcomp.manager.interfacedef.IRessourceBase#addRessourceCert(com.pentila.evalcomp.domain.certification.RessourceCert, java.io.InputStream)
+ */
+ public RessourceCert addRessourceCert(RessourceCert ressourceCert, InputStream is) {
+
+ String login = ressourceCert.getOwner().getUid();
+
+ String path = "/" + login + evaluationDirectory + "/" + "Documents/" + (new Date().getTime());
+
+ ressourceCert.setPath(path);
+ ressourceCert.setPluginKey(this.getDefaultPluginName());
+
+ String [] ret = addRessourceItem(login, ressourceCert.getName(), is, path, this.getDefaultPluginName());
+
+ ressourceCert.setName(ret[1]);
+ ressourceCert.setPath(ret[0]);
+ ressourceCertDAO.saveOrUpdate(ressourceCert);
+
+ return ressourceCert;
+
+ }
+
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see
+ * com.pentila.evalcomp.manager.interfacedef.IRessourceBase#addRessourceItem
+ * (java.lang.String, org.apache.commons.fileupload.FileItem,
+ * java.lang.String, java.lang.String)
+ */
+ public String[] addRessourceItem(String login, String filename, InputStream fileItem,
+ String inPath, String pluginKey) {
+ IRessourcePlugin plugin = getPlugin(pluginKey);
+ return plugin.addRessourceItem(login, filename, fileItem, inPath, pluginKey);
+
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see
+ * com.pentila.evalcomp.manager.interfacedef.IRessource#addResourceToESI
+ * (com.pentila.evalcomp.domain.User,
+ * com.pentila.evalcomp.domain.transit.ResourceFile,
+ * com.pentila.evalcomp.domain.instance.EvaluationSubjectInstance)
+ */
+ public Ressource addRessourceToESI(User user, RessourceItem rf,
+ EvaluationSubjectInstance esi) {
+
+ IRessourcePlugin plugin = getPlugin(rf);
+
+
+ Ressource newRessource = new Ressource();
+
+
+ String login = user.getUid();
+ String path = login + evaluationDirectory + "/" + esi.getId().toString();
+
+
+ String[] pathAndName = plugin.copyRessource(rf, path, login);
+ if (pathAndName != null) {
+ newRessource.setName(pathAndName[1]);
+ newRessource.setPath(pathAndName[0]);
+ newRessource.setOwner(user);
+ // associate inside hibernate
+ newRessource.setEvaluationSubjectInstance(esi);
+
+ newRessource.setPluginKey(rf.getPluginKey());
+ getRessourceDAO().saveOrUpdate(newRessource);
+ return newRessource;
+ }
+
+ return null;
+
+ }
+
+
+ /* (non-Javadoc)
+ * @see com.pentila.evalcomp.manager.interfacedef.IRessourceBase#addRessourceToESI(com.pentila.evalcomp.domain.User, java.lang.String, java.io.InputStream, java.lang.String, java.lang.String, com.pentila.evalcomp.domain.instance.EvaluationSubjectInstance)
+ */
+ public Ressource addRessourceToESI(User user, String filename, InputStream fileItem,
+ String inPath, String pluginKey, EvaluationSubjectInstance esi) {
+
+ if (pluginKey == null){
+
+ pluginKey = this.getDefaultPluginName();
+ }
+
+ IRessourcePlugin plugin = getPlugin(pluginKey);
+
+ Ressource newRessource = new Ressource();
+ String path = "/" + user.getUid() + evaluationDirectory + "/" + esi.getId().toString();
+ String[] pathAndName = plugin.addRessourceItem(user.getUid(), filename, fileItem, path, pluginKey);
+ if (pathAndName != null) {
+ newRessource.setName(pathAndName[1]);
+ newRessource.setPath(pathAndName[0]);
+ newRessource.setOwner(user);
+ // associate inside hibernate
+ newRessource.setEvaluationSubjectInstance(esi);
+
+ newRessource.setPluginKey(pluginKey);
+ getRessourceDAO().saveOrUpdate(newRessource);
+ return newRessource;
+ }
+
+ return null;
+
+ }
+
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see com.pentila.evalcomp.manager.nn#addResource(java.lang.String,
+ * org.apache.commons.fileupload.FileItem, java.lang.String)
+ */
+ /*
+ * public void addResource(String login, FileItem fileItem, String inPath) {
+ * storage.saveFile(login, fileItem, inPath); }
+ */
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see com.pentila.evalcomp.manager.nn#copyFolder()
+ */
+ public void copyFolder() {
+
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see
+ * com.pentila.evalcomp.manager.interfacedef.IRessource#copyResource(com
+ * .pentila.evalcomp.domain.transit.ResourceFile, java.lang.Long,
+ * java.lang.String)
+ */
+ public void copyRessource(RessourceItem file, Long id, String login) {
+ // TODO Auto-generated method stub
+
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see com.pentila.evalcomp.manager.nn#deleteFolder(java.lang.String,
+ * java.lang.String)
+ */
+ public void deleteFolder(RessourceItem ri, String login) {
+ IRessourcePlugin plugin = getPlugin(ri);
+ plugin.deleteFolder(ri, login);
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see com.pentila.evalcomp.manager.nn#deleteResource(java.lang.String,
+ * java.lang.String)
+ */
+ public void deleteRessource(RessourceItem ri, String login) {
+ IRessourcePlugin plugin = getPlugin(ri);
+ plugin.deleteRessource(ri, login);
+ }
+
+ /**
+ * Gets the plugin.
+ *
+ * @param ri
+ * the ri
+ *
+ * @return the plugin
+ */
+ private IRessourcePlugin getPlugin(RessourceItem ri) {
+ // TODO Auto-generated method stub
+
+ return getPlugin(ri.getPluginKey());
+
+ }
+
+ /**
+ * Gets the plugin.
+ *
+ * @param pluginKey
+ * the plugin key
+ *
+ * @return the plugin
+ */
+ private IRessourcePlugin getPlugin(String pluginKey) {
+ // TODO Auto-generated method stub
+
+ if (plugins.containsKey(pluginKey)) {
+ return plugins.get(pluginKey);
+ }
+ return null;
+
+ }
+
+ /**
+ * Gets the plugins.
+ *
+ * @return the plugins
+ */
+ public Map<String, IRessourcePlugin> getPlugins() {
+ return plugins;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see
+ * com.pentila.evalcomp.manager.interfacedef.IRessourceBase#getRessource
+ * (java.lang.String, java.lang.String, java.lang.String)
+ */
+ public RessourceItem getRessource(String pluginKey, String ressourceKey,
+ String mode) {
+ // TODO Auto-generated method stub
+ IRessourcePlugin plugin = getPlugin(pluginKey);
+ return plugin.getRessource(pluginKey, ressourceKey, mode);
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see com.pentila.evalcomp.manager.nn#getRessourceDAO()
+ */
+ /**
+ * Gets the ressource dao.
+ *
+ * @return the ressource dao
+ */
+ public IRessourceDAO getRessourceDAO() {
+ return ressourceDAO;
+ }
+
+ /**
+ * Gets the ressource definition dao.
+ *
+ * @return the ressource definition dao
+ */
+ public IRessourceDefinitionDAO getRessourceDefinitionDAO() {
+ return ressourceDefinitionDAO;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see
+ * com.pentila.evalcomp.manager.interfacedef.IRessourceBase#getRessourceUrl
+ * (java.lang.String, java.lang.String, java.lang.String)
+ */
+ public String getRessourceUrl(String pluginKey, String ressourceKey,
+ String mode) {
+ // TODO Auto-generated method stub
+ IRessourcePlugin plugin = getPlugin(pluginKey);
+ return plugin.getRessourceUrl(pluginKey, ressourceKey, mode);
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see com.pentila.evalcomp.manager.nn#getWorkspace(java.lang.String)
+ */
+ public RessourceItem getWorkspace(String login) {
+
+ RessourceFolder rf = new RessourceFolder();
+
+ for (IRessourcePlugin plugin : plugins.values()) {
+ try {
+ rf.getFolderList().add(
+ (RessourceFolder) plugin.getWorkspace(login));
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+ return rf;
+
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see com.pentila.evalcomp.manager.nn#moveFolder()
+ */
+ public RessourceFolder moveFolder(RessourceItem newri, RessourceItem ri, String login) {
+ // TODO Auto-generated method stub
+
+ IRessourcePlugin plugin = getPlugin(ri);
+
+ RessourceFolder rf = plugin.moveFolder(newri, ri, login);
+ rf.setPluginKey(plugin.getPluginKey());
+ return rf;
+
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see com.pentila.evalcomp.manager.nn#moveFile()
+ */
+ public RessourceItem moveRessource(RessourceItem newri, RessourceItem ri,
+ String login) {
+ // TODO Auto-generated method stub
+ IRessourcePlugin plugin = getPlugin(ri);
+ RessourceItem rit = plugin.moveRessource(newri, ri, login);
+ rit.setPluginKey(plugin.getPluginKey());
+ return rit;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see
+ * com.pentila.evalcomp.manager.interfacedef.IRessourceBase#query(java.lang
+ * .String, java.lang.Integer, java.lang.Integer, java.lang.String)
+ */
+ public Set<RessourceItem> query(String query, Integer size, Integer start,
+ String pluginKey) {
+ // TODO Auto-generated method stub
+
+ Set<RessourceItem> sri = new HashSet<RessourceItem>();
+
+ IRessourcePlugin plugin = null;
+
+ if (pluginKey != null && !pluginKey.equals("")) {
+ plugin = getPlugin(pluginKey);
+ }
+
+ if (plugin != null) {
+ return plugin.query(query, size, start, pluginKey);
+ } else {
+
+ for (IRessourcePlugin rplugin : plugins.values()) {
+ try {
+ sri.addAll(rplugin.query(query, size, start, ""));
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+ }
+ return sri;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see
+ * com.pentila.evalcomp.manager.interfacedef.IRessourceBase#removePermission
+ * (com.pentila.evalcomp.domain.Ressource, java.util.Set, java.lang.String)
+ */
+ public void removePermission(Ressource r, Set<String> suid, String role) {
+ // TODO Auto-generated method stub
+ IRessourcePlugin plugin = getPlugin(r.getPluginKey());
+
+ RessourceFile ri = new RessourceFile();
+ ri.setRessourceKey(r.getPath());
+ ri.setName(r.getName());
+
+ plugin.removePermission(ri, suid, role);
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see
+ * com.pentila.evalcomp.manager.interfacedef.IRessourceBase#removePermission
+ * (com.pentila.evalcomp.domain.definition.RessourceDefinition,
+ * java.util.Set, java.lang.String)
+ */
+ public void removePermission(RessourceDefinition rd, Set<String> suid,
+ String role) {
+ // TODO Auto-generated method stub
+ try {
+ IRessourcePlugin plugin = getPlugin(rd.getPluginKey());
+
+ RessourceFile ri = new RessourceFile();
+ ri.setRessourceKey(rd.getPath());
+ ri.setName(rd.getName());
+
+ plugin.removePermission(ri, suid, role);
+ } catch (Exception e) {
+
+ }
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @seecom.pentila.evalcomp.manager.interfacedef.IRessourceBase#
+ * removeRessourceDefinition
+ * (com.pentila.evalcomp.domain.definition.RessourceDefinition)
+ */
+ public void removeRessourceDefinition(RessourceDefinition rd) {
+ // TODO Auto-generated method stub
+
+ IRessourcePlugin plugin = getPlugin(rd.getPluginKey());
+
+
+
+ RessourceFile ri = new RessourceFile();
+ ri.setRessourceKey(rd.getPath());
+ ri.setName(rd.getName());
+
+ plugin.removeRessource(ri, rd.getOwner().getUid());
+
+ ressourceDefinitionDAO.delete(rd);
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @seecom.pentila.evalcomp.manager.interfacedef.IRessourceBase#
+ * removeRessourceFromESI(com.pentila.evalcomp.domain.Ressource,
+ * java.lang.String)
+ */
+ public void removeRessourceFromESI(Ressource r, String login) {
+ // TODO Auto-generated method stub
+
+ Ressource myRes = getRessourceDAO().get(r.getId());
+ RessourceFile ri = new RessourceFile();
+ ri.setPluginKey(myRes.getPluginKey());
+ ri.setRessourceKey(myRes.getPath());
+ ri.setName(myRes.getName());
+ IRessourcePlugin plugin = getPlugin(ri);
+ plugin.removeRessource(ri, login);
+
+ getRessourceDAO().delete(myRes);
+
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see
+ * com.pentila.evalcomp.manager.interfacedef.IRessource#removeResourceFromESI
+ * (java.lang.String, java.util.Set)
+ */
+ /**
+ * Removes the ressource from esi.
+ *
+ * @param login
+ * the login
+ * @param ruid
+ * the ruid
+ */
+ public void removeRessourceFromESI(String login, Set<Long> ruid) {
+ // TODO Auto-generated method stub
+
+ for (Long uidres : ruid) {
+ Ressource myRes = getRessourceDAO().get(uidres);
+ RessourceFile ri = new RessourceFile();
+ ri.setPluginKey(myRes.getPluginKey());
+ ri.setRessourceKey(myRes.getPath());
+ ri.setName(myRes.getName());
+ IRessourcePlugin plugin = getPlugin(ri);
+ plugin.removeRessource(ri, login);
+ getRessourceDAO().delete(myRes);
+ }
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see com.pentila.evalcomp.manager.nn#renameFolder(java.lang.String,
+ * java.lang.String, java.lang.String)
+ */
+ public RessourceFolder renameFolder(RessourceItem ri, String login) {
+ IRessourcePlugin plugin = getPlugin(ri);
+ return plugin.renameFolder(ri, login);
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see com.pentila.evalcomp.manager.nn#renameResource(java.lang.String,
+ * java.lang.String, java.lang.String)
+ */
+ public RessourceItem renameRessource(RessourceItem ri, String login) {
+ IRessourcePlugin plugin = getPlugin(ri);
+ return plugin.renameRessource(ri, login);
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see
+ * com.pentila.evalcomp.manager.interfacedef.IRessourceBase#setPermission
+ * (com.pentila.evalcomp.domain.Ressource, java.util.Set, java.lang.String)
+ */
+ public void setPermission(Ressource r, Set<String> suid, String role) {
+ IRessourcePlugin plugin = getPlugin(r.getPluginKey());
+
+ RessourceFile ri = new RessourceFile();
+ ri.setRessourceKey(r.getPath());
+ ri.setName(r.getName());
+
+ plugin.setPermission(ri, suid, role);
+
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see
+ * com.pentila.evalcomp.manager.interfacedef.IRessourceBase#setPermission
+ * (com.pentila.evalcomp.domain.definition.RessourceDefinition,
+ * java.util.Set, java.lang.String)
+ */
+ public void setPermission(RessourceDefinition rd, Set<String> suid,
+ String role) {
+ IRessourcePlugin plugin = getPlugin(rd.getPluginKey());
+
+ RessourceFile ri = new RessourceFile();
+ ri.setRessourceKey(rd.getPath());
+ ri.setName(rd.getName());
+
+ plugin.setPermission(ri, suid, role);
+
+ }
+
+ /**
+ * Sets the plugins.
+ *
+ * @param plugins
+ * the plugins
+ */
+ public void setPlugins(Map<String, IRessourcePlugin> plugins) {
+ this.plugins = plugins;
+ }
+
+ /**
+ * Set RessourceDAO.
+ *
+ * @param ressourceDAO
+ * the ressource dao
+ */
+ public void setRessourceDAO(IRessourceDAO ressourceDAO) {
+ this.ressourceDAO = ressourceDAO;
+ }
+
+ /**
+ * Sets the ressource definition dao.
+ *
+ * @param ressourceDefinitionDAO
+ * the new ressource definition dao
+ */
+ public void setRessourceDefinitionDAO(
+ IRessourceDefinitionDAO ressourceDefinitionDAO) {
+ this.ressourceDefinitionDAO = ressourceDefinitionDAO;
+ }
+
+ /* (non-Javadoc)
+ * @see com.pentila.evalcomp.manager.interfacedef.IRessourceBase#getDefaultPluginName()
+ */
+ public String getDefaultPluginName() {
+ for (Entry<String , IRessourcePlugin> p : this.getPlugins().entrySet()){
+
+ if (p.getValue().isDefaultPlugin()){
+ return p.getKey();
+ }
+
+ }
+ return "";
+ }
+
+ /**
+ * Gets the ressource cert dao.
+ *
+ * @return the ressource cert dao
+ */
+ public IRessourceCertDAO getRessourceCertDAO() {
+ return ressourceCertDAO;
+ }
+
+ /**
+ * Sets the ressource cert dao.
+ *
+ * @param ressourceCertDAO the new ressource cert dao
+ */
+ public void setRessourceCertDAO(IRessourceCertDAO ressourceCertDAO) {
+ this.ressourceCertDAO = ressourceCertDAO;
+ }
+
+ public void accessRessource(Ressource ressource) {
+
+ String uid = Beans.getEntityManagerBean().getCurrentUser().getUid();
+
+ Set<String> uids = new HashSet<String>();
+ uids.add(uid);
+ setPermission(ressource, uids, "Viewer");
+
+
+ }
+
+ public RessourceItem getContent(String path, String login) {
+ RessourceFolder rf = new RessourceFolder();
+
+ for (IRessourcePlugin plugin : plugins.values()) {
+ try {
+ rf.getFolderList().add(
+ (RessourceFolder) plugin.getContent(path, login));
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+ return rf;
+
+ }
+
+ public String getRessourceAsString(RessourceItem ri, String login) {
+ IRessourcePlugin plugin = getPlugin(ri.getPluginKey());
+
+ String ressourceKey = ri.getRessourceKey();
+
+
+
+ String ret = plugin.getRessourceAString(ressourceKey);
+
+
+
+ return ret ;
+ }
+
+ public void saveRessource(Long long1, String filename, String pathTo, String pluginkey,
+ String content) {
+
+ InputStream data = new ByteArrayInputStream(content.getBytes());
+ String login = Beans.getEntityManagerBean().getCurrentUser().getUid();
+ this.addRessourceItem(login, filename, data, pathTo, pluginkey);
+
+ }
+
+
+}