[jboss-svn-commits] JBL Code SVN: r36985 - labs/jbossrules/soa_branches/BRMS-5.1.x/drools-guvnor/src/main/java/org/drools/guvnor/server/files.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Thu May 5 14:31:48 EDT 2011
Author: tsurdilovic
Date: 2011-05-05 14:31:47 -0400 (Thu, 05 May 2011)
New Revision: 36985
Modified:
labs/jbossrules/soa_branches/BRMS-5.1.x/drools-guvnor/src/main/java/org/drools/guvnor/server/files/WebDAVImpl.java
Log:
BRMS-585: Rules uploaded from JBDS get an extra package statement
Modified: labs/jbossrules/soa_branches/BRMS-5.1.x/drools-guvnor/src/main/java/org/drools/guvnor/server/files/WebDAVImpl.java
===================================================================
--- labs/jbossrules/soa_branches/BRMS-5.1.x/drools-guvnor/src/main/java/org/drools/guvnor/server/files/WebDAVImpl.java 2011-05-05 17:38:11 UTC (rev 36984)
+++ labs/jbossrules/soa_branches/BRMS-5.1.x/drools-guvnor/src/main/java/org/drools/guvnor/server/files/WebDAVImpl.java 2011-05-05 18:31:47 UTC (rev 36985)
@@ -16,10 +16,13 @@
package org.drools.guvnor.server.files;
+import java.io.BufferedReader;
import java.io.ByteArrayInputStream;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
+import java.io.InputStreamReader;
+import java.io.UnsupportedEncodingException;
import java.security.Principal;
import java.util.ArrayList;
import java.util.Collections;
@@ -599,7 +602,6 @@
String contentType,
String characterEncoding) {
RulesRepository repository = getRepo();
- //System.out.println("set resource content:" + uri);
if ( uri.endsWith( ".DS_Store" ) ) return 0;
String[] path = getPath( uri );
if ( path[0].equals( "packages" ) && checkPackagePermission( path[1],
@@ -621,7 +623,24 @@
String[] assetName = AssetItem.getAssetNameFromFileName( path[2] );
PackageItem pkg = repository.loadPackage( packageName );
AssetItem asset = pkg.loadAsset( assetName[0] );
- asset.updateBinaryContentAttachment( content );
+ if(asset.getFormat().equals("drl")) {
+ try {
+ BufferedReader reader = new BufferedReader(new InputStreamReader(content));
+ StringBuilder sb = new StringBuilder();
+ String line = null;
+ while ((line = reader.readLine()) != null) {
+ if(!line.startsWith("package ")) {
+ sb.append(line + "\n");
+ }
+ }
+ asset.updateBinaryContentAttachment(new ByteArrayInputStream(sb.toString().getBytes("UTF-8")));
+ } catch (Exception e) {
+ //default
+ asset.updateBinaryContentAttachment( content );
+ }
+ } else {
+ asset.updateBinaryContentAttachment( content );
+ }
//here we could save, or check in, depending on if enough time has passed to justify
//a new version. Otherwise we will pollute the version history with lots of trivial versions.
//if (shouldCreateNewVersion(asset.getLastModified())) {
More information about the jboss-svn-commits
mailing list