1. 06 Nov, 2014 4 commits
  2. 15 Oct, 2014 1 commit
  3. 25 Sep, 2014 1 commit
  4. 19 Sep, 2014 1 commit
  5. 09 Sep, 2014 1 commit
    • Steven Murray's avatar
      Second step of refactoring the drive-catalogue tape-sessions. · ac0082ba
      Steven Murray authored
      Removed redundant methods and added sessionSucceeded() and
      sessionFailed() callback mechanism to DriveCatalogueSession.
      
      Please note that this version still does not handle the bad day
      scenarios of a tape label session, nor does it fully implement
      the cleaner or heartbeat logic.
      ac0082ba
  6. 19 Aug, 2014 1 commit
  7. 14 Aug, 2014 1 commit
  8. 03 Jul, 2014 3 commits
  9. 24 Jun, 2014 1 commit
  10. 23 Jun, 2014 1 commit
  11. 06 Jun, 2014 1 commit
  12. 23 May, 2014 2 commits
  13. 15 May, 2014 1 commit
  14. 12 May, 2014 2 commits
  15. 07 May, 2014 1 commit
  16. 06 May, 2014 1 commit
  17. 29 Apr, 2014 2 commits
  18. 19 Dec, 2013 2 commits
    • Steven Murray's avatar
      Renamed the Log class to Logger and likewise the LogImplementation to · b09a3af3
      Steven Murray authored
      LoggerImplementation.  This then allowed me to rename the writeMsg()
      suit of functions to logMsg() which is much more clear.
      b09a3af3
    • Steven Murray's avatar
      The constructor of each C++ CASTOR daemon now takes a reference to Log object · a80c0bf1
      Steven Murray authored
      as a parameter.  The functions that create the CASTOR daemon objects all
      create a castor::log::LogImplementation object and pass it to the constructor
      of their corresponding CASTOR daemon object.  When unit testting, one now has
      the posibility to develop a dummy Log object that implements the interface
      with dummy or mock routines so that the unit tests can run without having to
      write to syslog or rsyslog which is a bit heavy for unit tests.  The
      castor::log::LogImplementation basically contains the logging code centered
      around syslog that was developed by Sebastien and Dennis.
      
      Please note that I now have to add one or more log functions to the base
      class of the CASTOR daemon objects, namely castor::server::BaseServer.
      a80c0bf1
  19. 16 Dec, 2013 2 commits
  20. 12 Dec, 2013 4 commits
    • Steven Murray's avatar
      Attempt to fix a compilation bug surrounding the uninitialized local variable... · a924aa28
      Steven Murray authored
      Attempt to fix a compilation bug surrounding the uninitialized local variable named len of the method castor::log::Log::writeMsg
      a924aa28
    • Steven Murray's avatar
      After discussions with Eric I have removed the singleton pattern from the · d5717e3e
      Steven Murray authored
      implementation of the proposal for a new CASTOR logging system API.
      
      The new API provides a Log class which contains a mutex that mirrors the
      previous locking strategy of Sebastien and Denis.  My additional singleton mutex
      and functionality should not be in the logging API.  Giuseppe and Sebastien
      should decide how the logging API is exposed to subclasses of CASTOR classes
      such as Server and Daemon.  The loggin API should concentrate on logging.
      
      By the way, instantiating two Log objects is not actually a problem, they will
      simply have separate connections to syslog, that's all.
      d5717e3e
    • Steven Murray's avatar
      After discussion with Giuseppe I have added two improvements that he has · a32794c0
      Steven Murray authored
      kindly suggested.
      
      Firstly the instance() method assumes that destroyInstance() is not called
      concurrently with it so it can assume that in a multi-threaded scenario there is
      a single transition from s_instance being NULL to s_instance pointing to a newly
      created Log object.  This means the following mutex-less if statement can be at
      the beginning of the instance() method to increase performance:
      
        if(NULL != s_instance) {
          return *s_instance;
        }
      
      Secondly the destructor of the Log class should be private in order to prevent
      clients from being able to directly delete the Log singleton.
      a32794c0
    • Steven Murray's avatar
      I have changed the design of the proposed new CASTOR logging API, from a C like · 2a48875a
      Steven Murray authored
      collection of functions within a castor::log namespace to a more object
      oriented Singleton pattern.  Pleae note that the code is still far from
      finished, I am commit (compiling) code early in an attempt to increase feedback.
      2a48875a
  21. 09 Dec, 2013 2 commits
  22. 04 Dec, 2013 3 commits
  23. 03 Dec, 2013 2 commits