Resolves Issue #10 where channel names with illegal filename characters are preventing log file creation.

This commit is contained in:
dennis.sheirer
2014-06-15 12:13:21 +00:00
parent 403bfd9dc0
commit 6962a3f250

View File

@@ -30,6 +30,14 @@ import util.TimeStamp;
public abstract class EventLogger
{
/* Illegal filename characters */
private static final String[] mIllegalCharacters = { "#", "%", "&", "{",
"}", "\\", "<", ">",
"*", "?", "/", " ",
"$", "!", "'", "\"",
":", "@", "+", "`",
"|", "=" };
private Path mLogDirectory;
private String mFileNameSuffix;
private String mLogFileName;
@@ -67,7 +75,7 @@ public abstract class EventLogger
sb.append( "_" );
sb.append( mFileNameSuffix );
mLogFileName = sb.toString();
mLogFileName = replaceIllegalCharacters( sb.toString() );
Log.info( "Creating log file:" + mLogFileName );
@@ -81,6 +89,19 @@ public abstract class EventLogger
}
}
/**
* Replaces any illegal filename characters in the proposed filename
*/
private String replaceIllegalCharacters( String filename )
{
for( String illegalCharacter: mIllegalCharacters )
{
filename.replace( illegalCharacter, "_" );
}
return filename;
}
public void stop()
{
if( mLogFile != null )