(file) Return to DynamicListener.h CVS log (file) (dir) Up to [Pegasus] / pegasus / src / Pegasus / DynListener

  1 a.dunfey 1.2.8.1 //%2006////////////////////////////////////////////////////////////////////////
  2 h.sterling 1.1     //
  3                    // Copyright (c) 2000, 2001, 2002 BMC Software; Hewlett-Packard Development
  4                    // Company, L.P.; IBM Corp.; The Open Group; Tivoli Systems.
  5                    // Copyright (c) 2003 BMC Software; Hewlett-Packard Development Company, L.P.;
  6                    // IBM Corp.; EMC Corporation, The Open Group.
  7                    // Copyright (c) 2004 BMC Software; Hewlett-Packard Development Company, L.P.;
  8                    // IBM Corp.; EMC Corporation; VERITAS Software Corporation; The Open Group.
  9                    // Copyright (c) 2005 Hewlett-Packard Development Company, L.P.; IBM Corp.;
 10                    // EMC Corporation; VERITAS Software Corporation; The Open Group.
 11 a.dunfey   1.2.8.1 // Copyright (c) 2006 Hewlett-Packard Development Company, L.P.; IBM Corp.;
 12                    // EMC Corporation; Symantec Corporation; The Open Group.
 13 h.sterling 1.1     //
 14                    // Permission is hereby granted, free of charge, to any person obtaining a copy
 15                    // of this software and associated documentation files (the "Software"), to
 16                    // deal in the Software without restriction, including without limitation the
 17                    // rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
 18                    // sell copies of the Software, and to permit persons to whom the Software is
 19                    // furnished to do so, subject to the following conditions:
 20                    // 
 21                    // THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN
 22                    // ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED
 23                    // "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
 24                    // LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
 25                    // PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
 26                    // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
 27                    // ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
 28                    // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 29                    //
 30                    //==============================================================================
 31                    //
 32                    // Author: Heather Sterling (hsterl@us.ibm.com)
 33                    //
 34 h.sterling 1.1     // Modified By: 
 35                    //
 36                    //%/////////////////////////////////////////////////////////////////////////////
 37                    
 38                    #ifndef Pegasus_Dynamic_Listener_h
 39                    #define Pegasus_Dynamic_Listener_h
 40                    
 41                    #include <Pegasus/Common/Config.h>
 42                    #include <Pegasus/Common/String.h>
 43                    #include <Pegasus/DynListener/Linkage.h>
 44                    
 45                    PEGASUS_NAMESPACE_BEGIN
 46                    PEGASUS_USING_STD;
 47                    
 48                    class SSLContext;
 49                    
 50                    class PEGASUS_DYNLISTENER_LINKAGE DynamicListener
 51                    {
 52                    public:
 53                    
 54                        static const Boolean DEFAULT_CONSUMER_UNLOAD;
 55 h.sterling 1.1         static const Uint32 DEFAULT_IDLE_TIMEOUT; 
 56                        static const Boolean DEFAULT_FORCE_SHUTDOWN;
 57                        static const Uint32 DEFAULT_SHUTDOWN_TIMEOUT;
 58                    
 59                        DynamicListener(Uint32 portNumber, 
 60                                        const String& consumerDir, 
 61                                        const String& consumerConfigDir,
 62                                        Boolean enableConsumerUnload = DEFAULT_CONSUMER_UNLOAD, 
 63                                        Uint32 consumerIdleTimeout = DEFAULT_IDLE_TIMEOUT, 
 64                                        Uint32 shutdownTimeout = DEFAULT_SHUTDOWN_TIMEOUT);
 65                    
 66                    #ifdef PEGASUS_HAS_SSL
 67                        DynamicListener(Uint32 portNumber, 
 68                                        const String& consumerDir,
 69                                        const String& consumerConfigDir,
 70                                        Boolean useSSL, 
 71                                        const String& keyPath, 
 72                                        const String& certPath,
 73                                        Boolean enableConsumerUnload = DEFAULT_CONSUMER_UNLOAD, 
 74                                        Uint32 consumerIdleTimeout = DEFAULT_IDLE_TIMEOUT, 
 75                                        Uint32 shutdownTimeout = DEFAULT_SHUTDOWN_TIMEOUT);
 76 h.sterling 1.1     
 77                        DynamicListener(Uint32 portNumber, 
 78                                        const String& consumerDir,
 79                                        const String& consumerConfigDir,
 80                                        Boolean useSSL, 
 81                                        SSLContext* sslContext,
 82                                        Boolean enableConsumerUnload = DEFAULT_CONSUMER_UNLOAD, 
 83                                        Uint32 consumerIdleTimeout = DEFAULT_IDLE_TIMEOUT, 
 84                                        Uint32 shutdownTimeout = DEFAULT_SHUTDOWN_TIMEOUT);
 85                    #endif
 86                    
 87                        ~DynamicListener();
 88                    
 89                        void start();
 90                    
 91                        void stop(Boolean forceShutdown= DEFAULT_FORCE_SHUTDOWN);
 92                    
 93                        Boolean isAlive();
 94                    
 95                        Boolean addConsumer(const String& consumerName, const String& location = String::EMPTY);
 96                    
 97 h.sterling 1.1         Boolean removeConsumer(const String& consumerName);
 98                    
 99                        Uint32 getPortNumber();
100                    
101                        String getConsumerDir();
102                    
103                        String getConsumerConfigDir();
104                    
105                        void setEnableConsumerUnload(const Boolean enableConsumerUnload);
106                    
107                        Boolean getEnableConsumerUnload();
108                    
109 gs.keenan  1.2         void setIdleTimeout(Uint32 idleTimeout);
110 h.sterling 1.1     
111                        Uint32 getIdleTimeout(); 
112                    
113                    private:
114                        void* _rep;
115                    
116                    };
117                    
118                    PEGASUS_NAMESPACE_END
119                    
120                    #endif /* Pegasus_Dynamic_Listener_h */

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2