From 7c23b18f915790fceec0637466060cf4bcffe2ae Mon Sep 17 00:00:00 2001 From: fgerlits Date: Wed, 20 Oct 2004 06:15:26 +0000 Subject: [PATCH] modified locking --- livesupport/doc/model/Scheduler/index.html | 4 +-- .../core/include/LiveSupport/Core/Playlist.h | 23 +++++++++--------- livesupport/modules/core/src/PlaylistTest.cxx | 22 +++++++++++------ .../scheduler/doc/model/SchedulerModel.zuml | Bin 125735 -> 137117 bytes .../products/scheduler/etc/Makefile.in | 8 ++++-- .../src/AddAudioClipToPlaylistMethod.cxx | 4 +-- .../src/CreatePlaylistMethodTest.cxx | 4 +-- .../scheduler/src/DeletePlaylistMethod.cxx | 14 +++++++++-- .../src/OpenPlaylistForEditingMethod.cxx | 14 +++-------- .../src/OpenPlaylistForEditingMethod.h | 13 +++++----- .../src/OpenPlaylistForEditingMethodTest.cxx | 8 +++--- .../src/RemoveAudioClipFromPlaylistMethod.cxx | 4 +-- .../scheduler/src/ValidatePlaylistMethod.cxx | 4 +-- 13 files changed, 66 insertions(+), 56 deletions(-) diff --git a/livesupport/doc/model/Scheduler/index.html b/livesupport/doc/model/Scheduler/index.html index 9770f83d5..80b083dbc 100644 --- a/livesupport/doc/model/Scheduler/index.html +++ b/livesupport/doc/model/Scheduler/index.html @@ -14,7 +14,7 @@ Development Loan Fund, under the GNU GPL.
@@ -2558,7 +2558,7 @@ in the Playlist store.
Name
- displayPlaylists
+ displayPlayLog
()
: Play log
diff --git a/livesupport/modules/core/include/LiveSupport/Core/Playlist.h b/livesupport/modules/core/include/LiveSupport/Core/Playlist.h index e46ea0dc2..6a9c218a6 100644 --- a/livesupport/modules/core/include/LiveSupport/Core/Playlist.h +++ b/livesupport/modules/core/include/LiveSupport/Core/Playlist.h @@ -22,7 +22,7 @@ Author : $Author: fgerlits $ - Version : $Revision: 1.7 $ + Version : $Revision: 1.8 $ Location : $Source: /home/paul/cvs2svn-livesupport/newcvsrepo/livesupport/modules/core/include/LiveSupport/Core/Playlist.h,v $ ------------------------------------------------------------------------------*/ @@ -71,7 +71,7 @@ using namespace boost::posix_time; * the playlist. * * @author $Author: fgerlits $ - * @version $Revision: 1.7 $ + * @version $Revision: 1.8 $ */ class Playlist : public Configurable { @@ -212,27 +212,26 @@ class Playlist : public Configurable } /** - * Test whether the playlist is locked for editing. + * Test whether the playlist is locked for editing or playing. * - * @return true if playlist is currently being edited; - * false if not, or if the editing has been suspended - * because the playlist is being played + * @return true if the playlist is currently being edited or + * played; false otherwise */ bool - getIsLockedForEditing() const throw () + isLocked() const throw () { - return isLockedForEditing && !isLockedForPlaying; + return isLockedForEditing || isLockedForPlaying; } /** - * Test whether the playlist is locked for playing. + * Test whether the playlist is currently available for editing. * - * @return true if playlist is locked, false if not + * @return true if the playlist is available, false otherwise */ bool - getIsLockedForPlaying() const throw () + canBeEdited() const throw () { - return isLockedForPlaying; + return isLockedForEditing && !isLockedForPlaying; } /** diff --git a/livesupport/modules/core/src/PlaylistTest.cxx b/livesupport/modules/core/src/PlaylistTest.cxx index f452b1098..7faeb63b2 100644 --- a/livesupport/modules/core/src/PlaylistTest.cxx +++ b/livesupport/modules/core/src/PlaylistTest.cxx @@ -22,7 +22,7 @@ Author : $Author: fgerlits $ - Version : $Revision: 1.7 $ + Version : $Revision: 1.8 $ Location : $Source: /home/paul/cvs2svn-livesupport/newcvsrepo/livesupport/modules/core/src/PlaylistTest.cxx,v $ ------------------------------------------------------------------------------*/ @@ -148,19 +148,25 @@ void PlaylistTest :: lockTest(void) throw (CPPUNIT_NS::Exception) { + CPPUNIT_ASSERT(!playlist->isLocked()); + CPPUNIT_ASSERT(!playlist->canBeEdited()); + CPPUNIT_ASSERT(playlist->setLockedForEditing(true)); + CPPUNIT_ASSERT(playlist->isLocked()); + CPPUNIT_ASSERT(playlist->canBeEdited()); CPPUNIT_ASSERT(!playlist->setLockedForEditing(true)); - CPPUNIT_ASSERT(playlist->setLockedForEditing(false)); CPPUNIT_ASSERT(playlist->setLockedForPlaying(true)); - CPPUNIT_ASSERT(!playlist->setLockedForPlaying(true)); - CPPUNIT_ASSERT(playlist->setLockedForPlaying(false)); - - CPPUNIT_ASSERT(playlist->setLockedForEditing(true)); - CPPUNIT_ASSERT(playlist->setLockedForPlaying(true)); + CPPUNIT_ASSERT(playlist->isLocked()); + CPPUNIT_ASSERT(!playlist->canBeEdited()); + CPPUNIT_ASSERT(!playlist->setLockedForEditing(true)); CPPUNIT_ASSERT(!playlist->setLockedForEditing(false)); + CPPUNIT_ASSERT(!playlist->setLockedForPlaying(true)); + CPPUNIT_ASSERT(playlist->setLockedForPlaying(false)); - CPPUNIT_ASSERT(!playlist->setLockedForEditing(true)); + CPPUNIT_ASSERT(playlist->isLocked()); + CPPUNIT_ASSERT(playlist->canBeEdited()); + CPPUNIT_ASSERT(playlist->setLockedForEditing(false)); } diff --git a/livesupport/products/scheduler/doc/model/SchedulerModel.zuml b/livesupport/products/scheduler/doc/model/SchedulerModel.zuml index c91d3b208b75bb8df3769205c2a6cc33c2d39a27..add36b57c12e8fef0d4185c90352712a7db8d89a 100644 GIT binary patch literal 137117 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 * The possible error codes are: *
    - *
  • 101 - invalid argument format
  • - *
  • 102 - argument is not a playlist ID
  • - *
  • 103 - playlist does not exist
  • - *
  • 104 - could not load playlist
  • - *
  • 105 - could not open playlist for editing (already open?)
  • + *
  • 101 - invalid argument format
  • + *
  • 102 - argument is not a playlist ID
  • + *
  • 104 - playlist not found
  • + *
  • 105 - could not open playlist
  • *
* @author $Author: fgerlits $ - * @version $Revision: 1.4 $ + * @version $Revision: 1.5 $ */ class OpenPlaylistForEditingMethod : public XmlRpc::XmlRpcServerMethod { diff --git a/livesupport/products/scheduler/src/OpenPlaylistForEditingMethodTest.cxx b/livesupport/products/scheduler/src/OpenPlaylistForEditingMethodTest.cxx index dbb31df1d..67d9ca2ed 100644 --- a/livesupport/products/scheduler/src/OpenPlaylistForEditingMethodTest.cxx +++ b/livesupport/products/scheduler/src/OpenPlaylistForEditingMethodTest.cxx @@ -22,7 +22,7 @@ Author : $Author: fgerlits $ - Version : $Revision: 1.5 $ + Version : $Revision: 1.6 $ Location : $Source: /home/paul/cvs2svn-livesupport/newcvsrepo/livesupport/products/scheduler/src/OpenPlaylistForEditingMethodTest.cxx,v $ ------------------------------------------------------------------------------*/ @@ -157,9 +157,9 @@ OpenPlaylistForEditingMethodTest :: firstTest(void) // no such playlist method->execute(parameter, result); - CPPUNIT_ASSERT((int) result["errorCode"] == 103); + CPPUNIT_ASSERT((int) result["errorCode"] == 104); CPPUNIT_ASSERT((const std::string) result["errorMessage"] == - "playlist does not exist"); + "playlist not found"); parameter.clear(); result.clear(); parameter["playlistId"] = 1; @@ -168,6 +168,6 @@ OpenPlaylistForEditingMethodTest :: firstTest(void) method->execute(parameter, result); CPPUNIT_ASSERT((int) result["errorCode"] == 105); CPPUNIT_ASSERT((const std::string) result["errorMessage"] == - "could not open playlist for editing (already open?)"); + "could not open playlist"); } diff --git a/livesupport/products/scheduler/src/RemoveAudioClipFromPlaylistMethod.cxx b/livesupport/products/scheduler/src/RemoveAudioClipFromPlaylistMethod.cxx index cd487cf0e..d767163c8 100644 --- a/livesupport/products/scheduler/src/RemoveAudioClipFromPlaylistMethod.cxx +++ b/livesupport/products/scheduler/src/RemoveAudioClipFromPlaylistMethod.cxx @@ -22,7 +22,7 @@ Author : $Author: fgerlits $ - Version : $Revision: 1.1 $ + Version : $Revision: 1.2 $ Location : $Source: /home/paul/cvs2svn-livesupport/newcvsrepo/livesupport/products/scheduler/src/RemoveAudioClipFromPlaylistMethod.cxx,v $ ------------------------------------------------------------------------------*/ @@ -143,7 +143,7 @@ RemoveAudioClipFromPlaylistMethod :: execute(XmlRpc::XmlRpcValue & parameters, return; } - if (!playlist->getIsLockedForEditing()) { + if (!playlist->canBeEdited()) { XmlRpcTools::markError(errorId+5, "playlist has not been opened for editing", returnValue); diff --git a/livesupport/products/scheduler/src/ValidatePlaylistMethod.cxx b/livesupport/products/scheduler/src/ValidatePlaylistMethod.cxx index aa9f365b1..b1c410da5 100644 --- a/livesupport/products/scheduler/src/ValidatePlaylistMethod.cxx +++ b/livesupport/products/scheduler/src/ValidatePlaylistMethod.cxx @@ -22,7 +22,7 @@ Author : $Author: fgerlits $ - Version : $Revision: 1.1 $ + Version : $Revision: 1.2 $ Location : $Source: /home/paul/cvs2svn-livesupport/newcvsrepo/livesupport/products/scheduler/src/ValidatePlaylistMethod.cxx,v $ ------------------------------------------------------------------------------*/ @@ -132,7 +132,7 @@ ValidatePlaylistMethod :: execute(XmlRpc::XmlRpcValue & parameters, return; } - if (!playlist->getIsLockedForEditing()) { + if (!playlist->canBeEdited()) { XmlRpcTools::markError(errorId+4, "playlist has not been opened for editing", returnValue);