Author: kcardineaud Date: 2011-08-24 14:35:24 +0200 (Wed, 24 Aug 2011) New Revision: 238 Url: http://nuiton.org/repositories/revision/scmwebeditor/238 Log: Use ApplicationConfig to get properties file Modified: trunk/src/main/java/org/nuiton/scmwebeditor/ScmWebEditorBaseAction.java trunk/src/main/java/org/nuiton/scmwebeditor/actions/ScmWebEditorMainAction.java Modified: trunk/src/main/java/org/nuiton/scmwebeditor/ScmWebEditorBaseAction.java =================================================================== --- trunk/src/main/java/org/nuiton/scmwebeditor/ScmWebEditorBaseAction.java 2011-08-19 16:29:53 UTC (rev 237) +++ trunk/src/main/java/org/nuiton/scmwebeditor/ScmWebEditorBaseAction.java 2011-08-24 12:35:24 UTC (rev 238) @@ -110,6 +110,10 @@ protected static final String ATTRIBUTE_FILESEARCH_SERVLET_URL = "searchServletUrl"; protected static final String ATTRIBUTE_REDIRECT_URL = "Redirect_url"; protected static final String ATTRIBUTE_PRIVATE_SERVLET_URI = "privateServletUri"; + + protected static final String PROPERTIESFILES = "scmwebeditor.properties"; + protected static final String EDITABLESFILES = "editableFiles"; + protected static CodepageDetectorProxy detector; Modified: trunk/src/main/java/org/nuiton/scmwebeditor/actions/ScmWebEditorMainAction.java =================================================================== --- trunk/src/main/java/org/nuiton/scmwebeditor/actions/ScmWebEditorMainAction.java 2011-08-19 16:29:53 UTC (rev 237) +++ trunk/src/main/java/org/nuiton/scmwebeditor/actions/ScmWebEditorMainAction.java 2011-08-24 12:35:24 UTC (rev 238) @@ -25,15 +25,15 @@ package org.nuiton.scmwebeditor.actions; import java.io.IOException; -import java.io.InputStream; import java.net.URL; import java.util.HashMap; import java.util.Iterator; +import java.util.LinkedList; import java.util.Map; import java.util.Map.Entry; -import java.util.Properties; import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; import org.apache.commons.lang.StringEscapeUtils; import org.apache.commons.logging.Log; @@ -42,10 +42,11 @@ import org.nuiton.scmwebeditor.ScmWebEditorBaseAction; import org.nuiton.scmwebeditor.SvnConnection; import org.nuiton.scmwebeditor.urlResolver.ScmUrlResolverEngine; +import org.nuiton.util.ApplicationConfig; +import org.nuiton.util.ArgumentsParserException; import org.tmatesoft.svn.core.SVNAuthenticationException; import org.tmatesoft.svn.core.SVNException; - import com.opensymphony.xwork2.Action; @@ -61,7 +62,9 @@ protected String format; protected String origText; + protected boolean saveCookie = true; + protected String numRevision; @@ -82,6 +85,9 @@ protected HttpServletRequest request; + protected HttpServletResponse response; + + protected String repositoryId; protected boolean fromLoginPage; @@ -277,7 +283,12 @@ if(log.isDebugEnabled()) { log.debug("Login : "+username); } - + + + + /* + * Récuperation des informations en session + */ if(username==null && pw==null) { if(getScmSession().getUsername(repositoryUUID)!=null && getScmSession().getPassword(repositoryUUID)!=null) { //On recupère les identifiants en session @@ -293,9 +304,14 @@ getScmSession().addScmUser(repositoryUUID, username , pw); } + svnConn.updateAuthentication(username, pw); + + /* + * Recuperation du fichier et de sa revision + */ try { originalText = getHeadRevision(address, username, pw); numRevision = getHeadNumberRevision(address, username, pw); @@ -344,41 +360,25 @@ } - Properties properties=null; - String[] editableFiles=null; - boolean errorReadingProperties = false; - - try { - InputStream inStream = getClass().getResourceAsStream("/scm.properties"); - - properties = loadProperties(inStream); - - - if(log.isDebugEnabled()) { - log.debug("editableFiles: "+ properties.getProperty("editableFiles", "text")); - } - editableFiles=properties.getProperty("editableFiles", "text").split(","); - - } catch (IOException e) { - if(log.isErrorEnabled()) { - log.error("Can't read properties file", e ); - } - errorReadingProperties=true; - } catch (NullPointerException e) { - if(log.isErrorEnabled()) { - log.error("Can't read properties file", e ); - } - errorReadingProperties=true; + + ApplicationConfig config = new ApplicationConfig(PROPERTIESFILES); + + LinkedList<String> editableFiles = new LinkedList<String>(); + + editableFiles.add("text"); + editableFiles.add("xml"); + editableFiles.add("x-java"); + + try { + config.parse(); + editableFiles.addAll(config.getOptionAsList(EDITABLESFILES).getOption()); + } catch (ArgumentsParserException eee) { + if(log.isErrorEnabled()) { + log.error("Can't read properties file", eee ); } - - if(errorReadingProperties) { - editableFiles = new String[3]; - editableFiles[0] = "text"; - editableFiles[1] = "xml"; - editableFiles[2] = "x-java"; } - + boolean editable =false; if(mimeType!=null ) { for (String fileType : editableFiles){ @@ -427,5 +427,8 @@ } + + + }