From b9dd81cf3a7470273d92bbd4eb20fee806a2c1d4 Mon Sep 17 00:00:00 2001 From: David Caruana Date: Wed, 10 Jun 2009 17:55:40 +0000 Subject: [PATCH] MOB-356: CMIS Spec - deleteContentStream() - AtomPub binding - added testContentStreamEmpty() - added testContentStreamDelete() - some spec issues raised for CMIS TC - also added delete() to ScriptContentData git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@14643 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../org/alfresco/repo/jscript/ScriptNode.java | 24 +++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/source/java/org/alfresco/repo/jscript/ScriptNode.java b/source/java/org/alfresco/repo/jscript/ScriptNode.java index 458b1ed22d..c4e9fa02ee 100644 --- a/source/java/org/alfresco/repo/jscript/ScriptNode.java +++ b/source/java/org/alfresco/repo/jscript/ScriptNode.java @@ -27,6 +27,7 @@ package org.alfresco.repo.jscript; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; +import java.io.OutputStream; import java.io.Reader; import java.io.Serializable; import java.text.MessageFormat; @@ -2814,6 +2815,29 @@ public class ScriptNode implements Serializable, Scopeable, NamespacePrefixResol this.contentData = (ContentData) services.getNodeService().getProperty(nodeRef, this.property); } + /** + * Delete the content stream + */ + public void delete() + { + ContentService contentService = services.getContentService(); + ContentWriter writer = contentService.getWriter(nodeRef, this.property, true); + OutputStream output = writer.getContentOutputStream(); + try + { + output.close(); + } + catch (IOException e) + { + // NOTE: fall-through + } + writer.setMimetype(null); + writer.setEncoding(null); + + // update cached variables after putContent() + this.contentData = (ContentData) services.getNodeService().getProperty(nodeRef, this.property); + } + /** * @return download URL to the content */