Diff for /parser3/src/include/pa_stylesheet_manager.h between versions 1.15.2.2 and 1.29

version 1.15.2.2, 2003/02/17 17:05:03 version 1.29, 2023/09/26 20:49:07
Line 1 Line 1
 /** @file  /** @file
         Parser: Stylesheet manager decl.          Parser: Stylesheet manager decl.
   
         Copyright (c) 2001-2003 ArtLebedev Group (http://www.artlebedev.com)          Copyright (c) 2001-2023 Art. Lebedev Studio (http://www.artlebedev.com)
         Author: Alexandr Petrosian <paf@design.ru> (http://paf.design.ru)          Authors: Konstantin Morshnev <moko@design.ru>, Alexandr Petrosian <paf@design.ru>
   
         global sql driver manager, must be thread-safe          global sql driver manager, must be thread-safe
 */  */
Line 10 Line 10
 #ifndef PA_STYLESHEET_MANAGER_H  #ifndef PA_STYLESHEET_MANAGER_H
 #define PA_STYLESHEET_MANAGER_H  #define PA_STYLESHEET_MANAGER_H
   
 static const char* IDENT_STYLESHEET_MANAGER_H="$Date$";  #define IDENT_PA_STYLESHEET_MANAGER_H "$Id$"
   
   
 #include "pa_pool.h"  
 #include "pa_hash.h"  #include "pa_hash.h"
 #include "pa_table.h"  #include "pa_table.h"
 #include "pa_cache_managers.h"  #include "pa_cache_managers.h"
   #include "pa_stack.h"
 // defines  #include "pa_stylesheet_connection.h"
   
 // forwards  
   
 class Stylesheet_connection;  
 class Stylesheet_connection_ptr;  
   
 /** XSLT stylesheet driver manager  /** XSLT stylesheet driver manager
                 maintains                   maintains 
Line 32  class Stylesheet_manager: public Cache_m Line 27  class Stylesheet_manager: public Cache_m
         friend class Stylesheet_connection;          friend class Stylesheet_connection;
 public:  public:
   
         Stylesheet_manager(Pool& apool);          Stylesheet_manager();
         virtual ~Stylesheet_manager();          override ~Stylesheet_manager();
         /**           /** 
                 check for disk update of "{file_spec}" or "{file_spec}.stamp",                  check for disk update of "{file_spec}" or "{file_spec}.stamp",
                 if not updated return cached version[if any] otherwise load/compile/return                  if not updated return cached version[if any] otherwise load/compile/return
         */          */
         Stylesheet_connection_ptr get_connection(const String& file_spec);          Stylesheet_connection* get_connection(String::Body file_spec);
   
 private: // cache  private: // cache
   
         Stylesheet_connection *get_connection_from_cache(const String& file_spec);          Stylesheet_connection* get_connection_from_cache(String::Body file_spec);
         void put_connection_to_cache(const String& file_spec, Stylesheet_connection& connection);          void put_connection_to_cache(String::Body file_spec, Stylesheet_connection& connection);
 private:  private:
         time_t prev_expiration_pass_time;          time_t prev_expiration_pass_time;
   
 private: // for stylesheet  private: // for stylesheet
   
         /// caches connection          /// caches connection
         void close_connection(const String& file_spec, Stylesheet_connection& connection);          void close_connection(String::Body file_spec, Stylesheet_connection& connection);
   
   public:
           typedef Stack<Stylesheet_connection*> connection_cache_value_type;
           typedef HashString<connection_cache_value_type*> connection_cache_type;
 private:  private:
           connection_cache_type connection_cache;
         Hash connection_cache;  
   
 public: // Cache_manager  public: // Cache_manager
   
         virtual Value& get_status(Pool& pool, const String *source);          override Value* get_status();
         virtual void maybe_expire_cache();          override void maybe_expire_cache();
   
 };  };
   
 /// global  /// global
 extern Stylesheet_manager *stylesheet_manager;  extern Stylesheet_manager* stylesheet_manager;
   
 #endif  #endif

Removed from v.1.15.2.2  
changed lines
  Added in v.1.29


E-mail: