Changeset 10714


Ignore:
Timestamp:
05/01/11 12:19:10 (9 years ago)
Author:
mlg
Message:

Adds support for method pwg.categories.delete
(allows to delete a category).

Location:
extensions/jiwigo-ws-api/src/main/java/fr/mael/jiwigo
Files:
9 edited

Legend:

Unmodified
Added
Removed
  • extensions/jiwigo-ws-api/src/main/java/fr/mael/jiwigo/dao/CategoryDao.java

    r10505 r10714  
    2828     */ 
    2929    public boolean create(Category category) throws JiwigoException; 
     30 
     31    /** 
     32     * Function that deletes a given category 
     33     * @param category the category to delete 
     34     * @return true if the category is successfully deleted 
     35     * @throws JiwigoException 
     36     */ 
     37    public boolean delete(Category category) throws JiwigoException; 
    3038} 
  • extensions/jiwigo-ws-api/src/main/java/fr/mael/jiwigo/dao/impl/CategoryDaoImpl.java

    r10505 r10714  
    111111    } 
    112112 
     113    /** 
     114     * @see fr.mael.jiwigo.dao.CategoryDao#delete(fr.mael.jiwigo.om.Category) 
     115     */ 
     116    public boolean delete(Category category) throws JiwigoException { 
     117        //this document will allow to get pwg_token. it is necessary to delete a category 
     118        Document docStatus = sessionManager.executeReturnDocument(MethodsEnum.SESSION_STATUS.getLabel()); 
     119        String pwgToken = Tools.getStringValueDom(docStatus.getDocumentElement(), "pwg_token"); 
     120        if (pwgToken.equals("")) { 
     121            throw new JiwigoException("Error getting pwg_token. Returned document was : " 
     122                    + Tools.documentToString(docStatus)); 
     123        } 
     124        if (LOG.isDebugEnabled()) { 
     125            LOG.debug("Deletes category " + category.getIdentifier() + " with pwg_token = " + pwgToken); 
     126        } 
     127 
     128        Document doc = sessionManager.executeReturnDocument(MethodsEnum.DELETE_CATEGORY.getLabel(), "category_id", 
     129                String.valueOf(category.getIdentifier()), "pwg_token", pwgToken); 
     130 
     131        if (LOG.isDebugEnabled()) { 
     132            LOG.debug(Tools.documentToString(doc)); 
     133        } 
     134        try { 
     135            return Tools.checkOk(doc); 
     136        } catch (FileAlreadyExistsException e) { 
     137            e.printStackTrace(); 
     138        } 
     139        return false; 
     140    } 
     141 
    113142    public SessionManager getSessionManager() { 
    114143        return sessionManager; 
  • extensions/jiwigo-ws-api/src/main/java/fr/mael/jiwigo/dao/impl/ImageDaoImpl.java

    r10704 r10714  
    146146        String thumbnailBase64 = base64.encode(Tools.getBytesFromFile(image.getThumbnail())); 
    147147        //sends the thumbnail and gets the result 
    148         Document reponseThumb = (sessionManager.executeReturnDocument("pwg.images.addChunk", "data", thumbnailBase64, 
    149                 "type", "thumb", "position", "1", "original_sum", 
     148        Document reponseThumb = (sessionManager.executeReturnDocument(MethodsEnum.ADD_CHUNK.getLabel(), "data", 
     149                thumbnailBase64, "type", "thumb", "position", "1", "original_sum", 
    150150                Tools.getMD5Checksum(image.getOriginale().getAbsolutePath()))); 
    151151 
     
    160160            File fichierAEnvoyer = filesToSend.get(i); 
    161161            String originaleBase64 = base64.encode(Tools.getBytesFromFile(fichierAEnvoyer)); 
    162             Document reponseOriginale = (sessionManager.executeReturnDocument("pwg.images.addChunk", "data", 
     162            Document reponseOriginale = (sessionManager.executeReturnDocument(MethodsEnum.ADD_CHUNK.getLabel(), "data", 
    163163                    originaleBase64, "type", "file", "position", String.valueOf(i), "original_sum", 
    164164                    Tools.getMD5Checksum(image.getOriginale().getAbsolutePath()))); 
     
    171171 
    172172        //add the image in the database and get the result of the webservice 
    173         Document reponseAjout = (sessionManager.executeReturnDocument("pwg.images.add", "file_sum", 
     173        Document reponseAjout = (sessionManager.executeReturnDocument(MethodsEnum.ADD_IMAGE.getLabel(), "file_sum", 
    174174                Tools.getMD5Checksum(image.getOriginale().getAbsolutePath()), "thumbnail_sum", 
    175175                Tools.getMD5Checksum(image.getThumbnail().getCanonicalPath()), "position", "1", "original_sum", 
     
    177177                String.valueOf(image.getIdCategory()), "name", image.getName(), "author", sessionManager.getLogin(), 
    178178                "level", image.getPrivacyLevel())); 
    179         LOG.debug("Response add : " + Tools.documentToString(reponseAjout)); 
     179        if (LOG.isDebugEnabled()) { 
     180            LOG.debug("Response add : " + Tools.documentToString(reponseAjout)); 
     181        } 
    180182        //      System.out.println(Main.sessionManager.executerReturnString("pwg.images.add", "file_sum", Outil 
    181183        //              .getMD5Checksum(image.getOriginale().getAbsolutePath()), "thumbnail_sum", Outil.getMD5Checksum(image 
     
    294296            //                          string.lastIndexOf("}") + 1); 
    295297            try { 
    296                 multipartEntity.addPart("method", new StringBody("pwg.images.addSimple")); 
     298                multipartEntity.addPart("method", new StringBody(MethodsEnum.ADD_SIMPLE.getLabel())); 
    297299                multipartEntity.addPart("category", new StringBody(category.toString())); 
    298300                multipartEntity.addPart("name", new StringBody(title)); 
  • extensions/jiwigo-ws-api/src/main/java/fr/mael/jiwigo/dao/impl/TagDaoImpl.java

    r10700 r10714  
    5555    public List<Tag> list() throws JiwigoException { 
    5656        Document doc = sessionManager.executeReturnDocument(MethodsEnum.TAGS_ADMIN_LIST.getLabel()); 
    57         //      System.out.println(Outil.documentToString(doc)); 
    58         NodeList nodeList = doc.getDocumentElement().getElementsByTagName("tags"); 
    5957        return getTagsFromDocument((Element) doc.getDocumentElement().getElementsByTagName("tags").item(0)); 
    6058 
  • extensions/jiwigo-ws-api/src/main/java/fr/mael/jiwigo/service/CategoryService.java

    r10505 r10714  
    4242     */ 
    4343    public boolean create(String nom) throws JiwigoException; 
     44 
     45    /** 
     46     * Deletes a category 
     47     * @param id id of the category 
     48     * @return 
     49     * @throws JiwigoException 
     50     */ 
     51    public boolean delete(Category category) throws JiwigoException; 
    4452} 
  • extensions/jiwigo-ws-api/src/main/java/fr/mael/jiwigo/service/impl/CategoryServiceImpl.java

    r10505 r10714  
    107107    } 
    108108 
     109    public boolean delete(Category category) throws JiwigoException { 
     110        if (category.getIdentifier() == null) { 
     111            throw new JiwigoException("The identifier of the category cannot be null"); 
     112        } else { 
     113            return dao.delete(category); 
     114        } 
     115    } 
     116 
    109117} 
  • extensions/jiwigo-ws-api/src/main/java/fr/mael/jiwigo/transverse/enumeration/MethodsEnum.java

    r9879 r10714  
    2626            "pwg.images.getInfo"), AJOUTER_CATEGORIE("pwg.categories.add"), AJOUTER_COMMENTAIRE("pwg.images.addComment"), LISTER_TAGS( 
    2727            "pwg.tags.getList"), TAGS_ADMIN_LIST("pwg.tags.getAdminList"), ADD_TAG("pwg.tags.add"), SET_INFO( 
    28             "pwg.images.setInfo"), SEARCH("pwg.images.search"), SET_PRIVACY_LEVEL("pwg.images.setPrivacyLevel"); 
     28            "pwg.images.setInfo"), SEARCH("pwg.images.search"), SET_PRIVACY_LEVEL("pwg.images.setPrivacyLevel"), ADD_SIMPLE( 
     29            "pwg.images.addSimple"), ADD_IMAGE("pwg.images.add"), ADD_CHUNK("pwg.images.addChunk"), DELETE_CATEGORY( 
     30            "pwg.categories.delete"), SESSION_STATUS("pwg.session.getStatus"); 
    2931 
    3032    protected String label; 
  • extensions/jiwigo-ws-api/src/main/java/fr/mael/jiwigo/transverse/session/impl/SessionManagerImpl.java

    r10698 r10714  
    161161        } 
    162162        doc = executeReturnDocument(MethodsEnum.LOGIN.getLabel(), "username", login, "password", password); 
     163        if (LOG.isDebugEnabled()) { 
     164            LOG.debug("XML connection : " + Tools.documentToString(doc)); 
     165        } 
    163166        try { 
    164167            return (Tools.checkOk(doc) ? 0 : 1); 
  • extensions/jiwigo-ws-api/src/main/java/fr/mael/jiwigo/transverse/util/Tools.java

    r10090 r10714  
    229229            return true; 
    230230        } else { 
    231             LOG.error("Resultat : " + doc.getDocumentElement().getAttribute("stat") + "\nDocument retourné : \n" 
     231            LOG.error("Resultat : " + doc.getDocumentElement().getAttribute("stat") + "\nDocument retourne : \n" 
    232232                    + Tools.documentToString(doc)); 
    233233            if (((Element) doc.getDocumentElement().getElementsByTagName("err").item(0)).getAttribute("msg").equals( 
     
    352352        Element el = (Element) element.getElementsByTagName(tagName).item(0); 
    353353        if (el != null) { 
    354                 return el.getFirstChild().getNodeValue(); 
     354            return el.getFirstChild().getNodeValue(); 
    355355        } 
    356356        // if not, empty string is safer then null 
Note: See TracChangeset for help on using the changeset viewer.