[prev in list] [next in list] [prev in thread] [next in thread]
List: helix-server-cvs
Subject: [Server-cvs] engine/session source_finder.cpp,1.12,1.13
From: vijendrakumara () helixcommunity ! org
Date: 2007-06-28 13:43:42
Message-ID: 200706281343.l5SDhqNW020773 () mailer ! progressive-comp ! com
[Download RAW message or body]
Update of /cvsroot/server/engine/session
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv8409
Modified Files:
source_finder.cpp
Log Message:
Hello,
This CR contains the changes according to updated spec.
Note : SERVER_11_1_RN : doesn’t have any changes plgnhand.h (that’s a part
of AMP).
Synopsis
========
Record-Blocking Feature Development for server
Branches: SERVER_CURRENT_RN, SERVER_11_1_RN
Suggested Reviewer: Jamie Gordon, Chytanya Karusala
Description
===========
Contain changes according to updated spec.
1. Change the datatype of variable from bool to int
2. Change the string from EnableContentRecording to ContentMarker
3. Change the condition 1: Record blocking 0:Record enable anything
else:Record enable
Added Licensing check
Fix Bug 197983: Server Do Not Record broken with Alternate Mount Points
Files Affected
==============
common/include/hxfiles.h
datatype-restrcited/rm/fileformat/rmffplin.cpp
datatype-restrcited/rm/fileformat/rmffplin.h
server/common/util/plgnhand.cpp
server/common/util/pub/plgnhand.h
server/engine/dataflow/fsmanager.cpp
server/engine/dataflow/pub/fsmanager.h
server/engine/inputsource/srcfinder.cpp
server/engine/session/source_finder.cpp
server-restricted/broadcast/transport/bcng/recv/breceiver.cpp
server-restricted/broadcast/transport/bcng/recv/strmsess.cpp
server-restricted/broadcast/transport/bcng/recv/pub/breceiver.h
server-restricted/broadcast/transport/bcng/recv/pub/strmsess.h
Testing Performed
=================
Functional Tests:
-----------------
Testing perform for various kinds of request using RealPlayer 11.
Tested on SERVER_CURRENT_RN , SERVER_11_1_RN
1. Testing for simple mount points – License is enabled
- Send a request for mount point where Contentmarker is 1
e.g rtsp://127.0.0.1/realvideo10.rm ; output: player shows
recording button disabled.
- Send a request for mount points where ContentMarker is 0
e.g rtsp://127.0.0.1/tst/realvideo10.rm ; output: player
shows recording button enabled.
2. Testing for simple mount points – Licensing is disabled
- Send a request for mount point where Contentmarker is 1
e.g rtsp://127.0.0.1/realvideo10.rm ; output: player shows
recording button enabled.
- Send a request for mount points where Contentmarker is 0
e.g rtsp://127.0.0.1/tst/realvideo10.rm ; output: player
shows recording button enabled.
3.Testing for Live Broadcast – License is enabled
- Send a request for push split e.g
Setup: encoder-receiver1-transmitter1-receiver2-player
rtsp://127.0.0.1/broadcast/source-name/broadcast/live.rm
Note: Receiver2 has entry as ContentMarker=1
Output: player shows recording button disabled.
- Send a request for push split e.g
Setup: encoder-receiver1-transmitter1-receiver2-player
rtsp://127.0.0.1/broadcast/source-name/broadcast/live.rm
Note: Receiver2 has entry as ContentMarker=0
Output: player shows recording button enabled.
4.Testing for Live Broadcast – License is disabled
- Send a request for push split e.g
Setup: encoder-receiver1-transmitter1-receiver2-player
rtsp://127.0.0.1/broadcast/source-name/broadcast/live.rm
Note: Receiver2 has entry as ContentMarker=1
Output: player shows recording button enabled.
- Send a request for push split e.g
Setup: encoder-receiver1-transmitter1-receiver2-player
rtsp://127.0.0.1/broadcast/source-name/broadcast/live.rm
Note: Receiver2 has entry as ContentMarker=0
Output: player shows recording button enabled.
Integration Tests:
n/a
Leak Tests:
n/a
Performance Tests:
n/a
Platforms Tested: win32-i386-vc7
Build verified: linux-rhel4-i686, win32-i386-vc7, sunos-5.10-sparc-server
QA Hints
========
None
Thanks and Regards
Vijendra
Index: source_finder.cpp
===================================================================
RCS file: /cvsroot/server/engine/session/source_finder.cpp,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -d -r1.12 -r1.13
--- source_finder.cpp 22 Jun 2007 05:47:50 -0000 1.12
+++ source_finder.cpp 28 Jun 2007 13:43:40 -0000 1.13
@@ -53,6 +53,8 @@
#include "srcerrs.h"
#include "server_request.h"
#include "ff_source.h"
+#include "defslice.h"
+
CServerSourceFinder::CServerSourceFinder
@@ -316,8 +318,6 @@
PluginHandler::FileFormat::PluginInfo* pPluginInfo = NULL;
- PluginHandler::FileSystem *pFSHandler = \
m_pProc->pc->plugin_handler->m_file_sys_handler;
-
pFileFormatHandler = m_pProc->pc->plugin_handler->m_file_format_handler;
if (pFileFormatHandler)
{
@@ -352,23 +352,37 @@
&& (HXR_OK == pPlugin->InitPlugin(m_pProc->pc->server_context)) )
{
HX_RELEASE(pInstance);
-
- IHXValues *pOptionInfo=NULL;
- pFSHandler->GetPluginOptions(m_pURL->full,pOptionInfo);
- ULONG32 ulValue;
- if(pOptionInfo)
- {
- if( HXR_OK == pOptionInfo->GetPropertyULONG32("EnableContentRecording", \
ulValue )) + IHXValues *pOptionInfo=NULL;
+ if (m_pFSManager)
+ {
+ PluginHandler::FileSystem::PluginInfo* pPluginInfo=NULL;
+ m_pFSManager->GetLastPlugin(pPluginInfo);
+ if (pPluginInfo)
{
- IHXContentRecordability *pContRecord=NULL;
- pPlugin->QueryInterface(IID_IHXContentRecordability, \
(void**)&pContRecord );
- if(pContRecord)
+ pPluginInfo->GetOptions(pOptionInfo);
+ }
+ if (pOptionInfo)
+ {
+ IHXRegistry *pRegistry=NULL;
+ m_pProc->pc->server_context->QueryInterface(IID_IHXRegistry, \
(void**)&pRegistry); + INT32 iLicenseContentMarker=0;
+ if (!pRegistry || pRegistry->GetIntByName(REGISTRY_CDIST_PUBLISHER, \
iLicenseContentMarker) != HXR_OK) {
- pContRecord->SetEnableContentRecording( (HXBOOL)ulValue );
- HX_RELEASE(pContRecord);
+ iLicenseContentMarker = 0;
+ }
+ ULONG32 ulValue;
+ if (iLicenseContentMarker && HXR_OK == \
pOptionInfo->GetPropertyULONG32("ContentMarker", ulValue)) + {
+ IHXContentRecordability *pContRecord=NULL;
+ pPlugin->QueryInterface(IID_IHXContentRecordability, \
(void**)&pContRecord ); + if (pContRecord)
+ {
+ pContRecord->SetContentMarker((UINT8)ulValue);
+ HX_RELEASE(pContRecord);
+ }
}
+ HX_RELEASE(pOptionInfo);
}
- HX_RELEASE(pOptionInfo);
}
pFileFormatSource = new FileFormatSource(m_pProc, pFileFormatObject,
m_pFSManager->m_mount_point_len,
_______________________________________________
Server-cvs mailing list
Server-cvs@helixcommunity.org
http://lists.helixcommunity.org/mailman/listinfo/server-cvs
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic