Fixed AR-1321: Allow '&' in filename

The following filename is valid now: "x ¬ £ % & + ; x.txt"
This was a restriction imposed by WebDAV, but the encoding of the repsonses is working well and these restrictions be removed as a result.

Fixed AR-1281: WebDAV upload was assigning incorrect encoding

I added a bean 'charset.finder', which can be fetched from the MimetypeService.
Various pluggins now exist to decode a stream and figure out what the encoding is.
WebDAV and CIFS/FTP are now hooked into this so that they guess a little better.

Fixed others:
Added retrying transactions to WebDAV.
Read/write transactions for WebDAV.


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@6073 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Derek Hulley
2007-06-22 21:27:17 +00:00
parent 838e14cc85
commit 54d7208f7b
14 changed files with 346 additions and 27 deletions

View File

@@ -28,6 +28,7 @@ import java.util.List;
import java.util.Map;
import org.alfresco.error.AlfrescoRuntimeException;
import org.alfresco.repo.content.encoding.ContentCharsetFinder;
import org.alfresco.service.NotAuditable;
import org.alfresco.service.PublicService;
@@ -82,6 +83,15 @@ public interface MimetypeService
*/
@NotAuditable
public Map<String, String> getMimetypesByExtension();
/**
* Check if a given mimetype represents a text format.
*
* @param mimetype the mimetype to check
* @return Returns <tt>true</tt> if it is text
*/
@NotAuditable
public boolean isText(String mimetype);
/**
* Get all mimetypes
@@ -101,4 +111,15 @@ public interface MimetypeService
*/
@NotAuditable
public String guessMimetype(String filename);
/**
* Provides the system default charset finder.
*
* @return Returns a character set finder that can be used to decode
* streams in order to get the encoding.
*
* @since 2.1
*/
@NotAuditable
public ContentCharsetFinder getContentCharsetFinder();
}