[Red5commits] [1541] API: IStreamFilenameGenerator now differs between filenames for recording and pl
jbauch
luke at codegent.com
Wed Jan 24 10:51:40 EST 2007
API: IStreamFilenameGenerator now differs between filenames for recording and playback
Timestamp: 11/14/06 18:56:44 EST (2 months ago)
Change: 1541
Author: jbauch
Files (see diff or trac for details):
doc/trunk/HOWTO-StreamCustomDirectories.txt
doc/trunk/changelog.txt
java/server/trunk/src/org/red5/server/api/stream/IStreamFilenameGenerator.java
java/server/trunk/src/org/red5/server/stream/ClientBroadcastStream.java
java/server/trunk/src/org/red5/server/stream/DefaultStreamFilenameGenerator.java
java/server/trunk/src/org/red5/server/stream/ProviderService.java
Trac: http://mirror1.cvsdude.com/trac/osflash/red5/changeset/1541
Index: /java/server/trunk/src/org/red5/server/stream/DefaultStreamFilenameGenerator.java
===================================================================
--- /java/server/trunk/src/org/red5/server/stream/DefaultStreamFilenameGenerator.java (revision 1406)
+++ /java/server/trunk/src/org/red5/server/stream/DefaultStreamFilenameGenerator.java (revision 1541)
@@ -1,2 +1,3 @@
+
package org.red5.server.stream;
@@ -36,9 +37,9 @@
}
- public String generateFilename(IScope scope, String name) {
- return generateFilename(scope, name, null);
+ public String generateFilename(IScope scope, String name, GenerationType type) {
+ return generateFilename(scope, name, null, type);
}
- public String generateFilename(IScope scope, String name, String extension) {
+ public String generateFilename(IScope scope, String name, String extension, GenerationType type) {
String result = getStreamDirectory(scope) + name;
if (extension != null && !extension.equals("")) {
Index: /java/server/trunk/src/org/red5/server/stream/ProviderService.java
===================================================================
--- /java/server/trunk/src/org/red5/server/stream/ProviderService.java (revision 1538)
+++ /java/server/trunk/src/org/red5/server/stream/ProviderService.java (revision 1541)
@@ -34,4 +34,5 @@
import org.red5.server.api.stream.IBroadcastStream;
import org.red5.server.api.stream.IStreamFilenameGenerator;
+import org.red5.server.api.stream.IStreamFilenameGenerator.GenerationType;
import org.red5.server.messaging.IMessageInput;
import org.red5.server.messaging.IPipe;
@@ -162,5 +163,5 @@
ScopeUtils.getScopeService(scope, IStreamFilenameGenerator.class, DefaultStreamFilenameGenerator.class);
- return filenameGenerator.generateFilename(scope, name);
+ return filenameGenerator.generateFilename(scope, name, GenerationType.PLAYBACK);
}
Index: /java/server/trunk/src/org/red5/server/stream/ClientBroadcastStream.java
===================================================================
--- /java/server/trunk/src/org/red5/server/stream/ClientBroadcastStream.java (revision 1538)
+++ /java/server/trunk/src/org/red5/server/stream/ClientBroadcastStream.java (revision 1541)
@@ -40,4 +40,5 @@
import org.red5.server.api.stream.ResourceExistException;
import org.red5.server.api.stream.ResourceNotFoundException;
+import org.red5.server.api.stream.IStreamFilenameGenerator.GenerationType;
import org.red5.server.messaging.IFilter;
import org.red5.server.messaging.IMessage;
@@ -137,5 +138,5 @@
DefaultStreamFilenameGenerator.class);
- String filename = generator.generateFilename(scope, name, ".flv");
+ String filename = generator.generateFilename(scope, name, ".flv", GenerationType.RECORD);
Resource res = scope.getResource(filename);
if (!isAppend) {
Index: /java/server/trunk/src/org/red5/server/api/stream/IStreamFilenameGenerator.java
===================================================================
--- /java/server/trunk/src/org/red5/server/api/stream/IStreamFilenameGenerator.java (revision 1538)
+++ /java/server/trunk/src/org/red5/server/api/stream/IStreamFilenameGenerator.java (revision 1541)
@@ -34,4 +34,10 @@
public static String BEAN_NAME = "streamFilenameGenerator";
+ /** Possible filename generation types. */
+ public static enum GenerationType {
+ PLAYBACK,
+ RECORD
+ };
+
/**
* Generate a filename without an extension.
@@ -41,5 +47,5 @@
* @return
*/
- public String generateFilename(IScope scope, String name);
+ public String generateFilename(IScope scope, String name, GenerationType type);
/**
@@ -51,5 +57,5 @@
* @return
*/
- public String generateFilename(IScope scope, String name, String extension);
+ public String generateFilename(IScope scope, String name, String extension, GenerationType type);
}
Index: /doc/trunk/HOWTO-StreamCustomDirectories.txt
===================================================================
--- /doc/trunk/HOWTO-StreamCustomDirectories.txt (revision 1539)
+++ /doc/trunk/HOWTO-StreamCustomDirectories.txt (revision 1541)
@@ -38,13 +38,14 @@
public String playbackPath = "videoStreams/";
- public String generateFilename(IScope scope, String name) {
+ public String generateFilename(IScope scope, String name,
+ GenerationType type) {
// Generate filename without an extension.
- return generateFilename(scope, name, null);
+ return generateFilename(scope, name, null, type);
}
public String generateFilename(IScope scope, String name,
- String extension) {
+ String extension, GenerationType type) {
String filename;
- if (name.startsWith("red5RecordDemo"))
+ if (type == GenerationType.RECORD)
filename = recordPath + name;
else
Index: /doc/trunk/changelog.txt
===================================================================
--- /doc/trunk/changelog.txt (revision 1537)
+++ /doc/trunk/changelog.txt (revision 1541)
@@ -11,4 +11,5 @@
- RTMP network library supports client mode (Trac #94)
- source of VOD streams can be customized through IStreamFilenameGenerator
+- API: IStreamFilenameGenerator differs between playback and recording
Bugfixes:
Note:
Diffs are chopped if more than 25k.
This is to get past the limit on the mailing list.
More information about the Red5commits
mailing list