Author: tross
Date: Thu Oct  9 06:47:48 2008
New Revision: 703164

URL: http://svn.apache.org/viewvc?rev=703164&view=rev
Log:
QPID-1327 - Added optional severity override in the eventRaise method

Modified:
    incubator/qpid/trunk/qpid/cpp/managementgen/qmf/schema.py
    incubator/qpid/trunk/qpid/cpp/managementgen/qmf/templates/Event.h
    incubator/qpid/trunk/qpid/cpp/src/qpid/agent/ManagementAgent.h
    incubator/qpid/trunk/qpid/cpp/src/qpid/agent/ManagementAgentImpl.cpp
    incubator/qpid/trunk/qpid/cpp/src/qpid/agent/ManagementAgentImpl.h
    incubator/qpid/trunk/qpid/cpp/src/qpid/management/ManagementBroker.cpp
    incubator/qpid/trunk/qpid/cpp/src/qpid/management/ManagementBroker.h
    incubator/qpid/trunk/qpid/cpp/src/qpid/management/ManagementEvent.h
    incubator/qpid/trunk/qpid/python/qpid/qmfconsole.py

Modified: incubator/qpid/trunk/qpid/cpp/managementgen/qmf/schema.py
URL: 
http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/managementgen/qmf/schema.py?rev=703164&r1=703163&r2=703164&view=diff
==============================================================================
--- incubator/qpid/trunk/qpid/cpp/managementgen/qmf/schema.py (original)
+++ incubator/qpid/trunk/qpid/cpp/managementgen/qmf/schema.py Thu Oct  9 
06:47:48 2008
@@ -810,8 +810,10 @@
     for item in self.packageName.split("."):
       stream.write ("namespace %s {\n" % item)
 
+  def genSeverity(self, stream, variables):
+    stream.write("%d" % self.sev)
+
   def genArgEncodes(self, stream, variables):
-    stream.write("    buf.putOctet(%d);\n" % self.sev)
     for arg in self.args:
       stream.write("    " + arg.type.type.encode.replace("@", 
"buf").replace("#", arg.name) + ";\n")
 

Modified: incubator/qpid/trunk/qpid/cpp/managementgen/qmf/templates/Event.h
URL: 
http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/managementgen/qmf/templates/Event.h?rev=703164&r1=703163&r2=703164&view=diff
==============================================================================
--- incubator/qpid/trunk/qpid/cpp/managementgen/qmf/templates/Event.h (original)
+++ incubator/qpid/trunk/qpid/cpp/managementgen/qmf/templates/Event.h Thu Oct  
9 06:47:48 2008
@@ -44,12 +44,13 @@
     writeSchemaCall_t getWriteSchemaCall(void) { return writeSchema; }
 
     Event/*MGEN:Event.NameCap*/(/*MGEN:Event.ConstructorArgs*/);
-    ~Event/*MGEN:Class.NameCap*/() {};
+    ~Event/*MGEN:Event.NameCap*/() {};
 
     static void registerSelf(::qpid::management::ManagementAgent* agent);
     std::string& getPackageName() const { return packageName; }
     std::string& getEventName() const { return eventName; }
     uint8_t* getMd5Sum() const { return md5Sum; }
+    uint8_t getSeverity() const { return /*MGEN:Event.Severity*/; }
     void encode(::qpid::framing::Buffer& buffer) const;
 };
 

Modified: incubator/qpid/trunk/qpid/cpp/src/qpid/agent/ManagementAgent.h
URL: 
http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/qpid/agent/ManagementAgent.h?rev=703164&r1=703163&r2=703164&view=diff
==============================================================================
--- incubator/qpid/trunk/qpid/cpp/src/qpid/agent/ManagementAgent.h (original)
+++ incubator/qpid/trunk/qpid/cpp/src/qpid/agent/ManagementAgent.h Thu Oct  9 
06:47:48 2008
@@ -44,6 +44,18 @@
         static ManagementAgent* agent;
     };
 
+    typedef enum {
+    SEV_EMERG = 0,
+    SEV_ALERT = 1,
+    SEV_CRIT  = 2,
+    SEV_ERROR = 3,
+    SEV_WARN  = 4,
+    SEV_NOTE  = 5,
+    SEV_INFO  = 6,
+    SEV_DEBUG = 7,
+    SEV_DEFAULT = 8
+    } severity_t;
+
     ManagementAgent() {}
     virtual ~ManagementAgent() {}
 
@@ -108,7 +120,8 @@
 
     //
     //
-    virtual void raiseEvent(const ManagementEvent& event) = 0;
+    virtual void raiseEvent(const ManagementEvent& event,
+                            severity_t severity = SEV_DEFAULT) = 0;
 
     // If "useExternalThread" was set to true in init, this method must
     // be called to provide a thread for any pending method calls that have 
arrived.

Modified: incubator/qpid/trunk/qpid/cpp/src/qpid/agent/ManagementAgentImpl.cpp
URL: 
http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/qpid/agent/ManagementAgentImpl.cpp?rev=703164&r1=703163&r2=703164&view=diff
==============================================================================
--- incubator/qpid/trunk/qpid/cpp/src/qpid/agent/ManagementAgentImpl.cpp 
(original)
+++ incubator/qpid/trunk/qpid/cpp/src/qpid/agent/ManagementAgentImpl.cpp Thu 
Oct  9 06:47:48 2008
@@ -158,17 +158,19 @@
     return objectId;
 }
 
-void ManagementAgentImpl::raiseEvent(const ManagementEvent& event)
+void ManagementAgentImpl::raiseEvent(const ManagementEvent& event, severity_t 
severity)
 {
     Mutex::ScopedLock lock(agentLock);
     Buffer outBuffer(eventBuffer, MA_BUFFER_SIZE);
     uint32_t outLen;
+    uint8_t sev = (severity == SEV_DEFAULT) ? event.getSeverity() : (uint8_t) 
severity;
 
     encodeHeader(outBuffer, 'e');
     outBuffer.putShortString(event.getPackageName());
     outBuffer.putShortString(event.getEventName());
     outBuffer.putBin128(event.getMd5Sum());
     outBuffer.putLongLong(uint64_t(Duration(now())));
+    outBuffer.putOctet(sev);
     event.encode(outBuffer);
     outLen = MA_BUFFER_SIZE - outBuffer.available();
     outBuffer.reset();

Modified: incubator/qpid/trunk/qpid/cpp/src/qpid/agent/ManagementAgentImpl.h
URL: 
http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/qpid/agent/ManagementAgentImpl.h?rev=703164&r1=703163&r2=703164&view=diff
==============================================================================
--- incubator/qpid/trunk/qpid/cpp/src/qpid/agent/ManagementAgentImpl.h 
(original)
+++ incubator/qpid/trunk/qpid/cpp/src/qpid/agent/ManagementAgentImpl.h Thu Oct  
9 06:47:48 2008
@@ -65,7 +65,7 @@
                        uint8_t*     md5Sum,
                        management::ManagementObject::writeSchemaCall_t 
schemaCall);
     ObjectId addObject(management::ManagementObject* objectPtr, uint64_t 
persistId = 0);
-    void raiseEvent(const management::ManagementEvent& event);
+    void raiseEvent(const management::ManagementEvent& event, severity_t 
severity = SEV_DEFAULT);
     uint32_t pollCallbacks(uint32_t callLimit = 0);
     int getSignalFd();
 

Modified: incubator/qpid/trunk/qpid/cpp/src/qpid/management/ManagementBroker.cpp
URL: 
http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/qpid/management/ManagementBroker.cpp?rev=703164&r1=703163&r2=703164&view=diff
==============================================================================
--- incubator/qpid/trunk/qpid/cpp/src/qpid/management/ManagementBroker.cpp 
(original)
+++ incubator/qpid/trunk/qpid/cpp/src/qpid/management/ManagementBroker.cpp Thu 
Oct  9 06:47:48 2008
@@ -221,17 +221,19 @@
     return objId;
 }
 
-void ManagementBroker::raiseEvent(const ManagementEvent& event)
+void ManagementBroker::raiseEvent(const ManagementEvent& event, severity_t 
severity)
 {
     Mutex::ScopedLock lock (userLock);
     Buffer outBuffer(eventBuffer, MA_BUFFER_SIZE);
     uint32_t outLen;
+    uint8_t sev = (severity == SEV_DEFAULT) ? event.getSeverity() : (uint8_t) 
severity;
 
     encodeHeader(outBuffer, 'e');
     outBuffer.putShortString(event.getPackageName());
     outBuffer.putShortString(event.getEventName());
     outBuffer.putBin128(event.getMd5Sum());
     outBuffer.putLongLong(uint64_t(Duration(now())));
+    outBuffer.putOctet(sev);
     event.encode(outBuffer);
     outLen = MA_BUFFER_SIZE - outBuffer.available();
     outBuffer.reset();

Modified: incubator/qpid/trunk/qpid/cpp/src/qpid/management/ManagementBroker.h
URL: 
http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/qpid/management/ManagementBroker.h?rev=703164&r1=703163&r2=703164&view=diff
==============================================================================
--- incubator/qpid/trunk/qpid/cpp/src/qpid/management/ManagementBroker.h 
(original)
+++ incubator/qpid/trunk/qpid/cpp/src/qpid/management/ManagementBroker.h Thu 
Oct  9 06:47:48 2008
@@ -62,7 +62,7 @@
                           ManagementObject::writeSchemaCall_t schemaCall);
     ObjectId addObject   (ManagementObject* object,
                           uint64_t          persistId = 0);
-    void raiseEvent(const ManagementEvent& event);
+    void raiseEvent(const ManagementEvent& event, severity_t severity = 
SEV_DEFAULT);
     void clientAdded     ();
     bool dispatchCommand (qpid::broker::Deliverable&       msg,
                           const std::string&         routingKey,

Modified: incubator/qpid/trunk/qpid/cpp/src/qpid/management/ManagementEvent.h
URL: 
http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/qpid/management/ManagementEvent.h?rev=703164&r1=703163&r2=703164&view=diff
==============================================================================
--- incubator/qpid/trunk/qpid/cpp/src/qpid/management/ManagementEvent.h 
(original)
+++ incubator/qpid/trunk/qpid/cpp/src/qpid/management/ManagementEvent.h Thu Oct 
 9 06:47:48 2008
@@ -40,6 +40,7 @@
     virtual std::string& getEventName() const = 0;
     virtual std::string& getPackageName() const = 0;
     virtual uint8_t* getMd5Sum() const = 0;
+    virtual uint8_t getSeverity() const = 0;
     virtual void encode(qpid::framing::Buffer&) const = 0;
 };
 

Modified: incubator/qpid/trunk/qpid/python/qpid/qmfconsole.py
URL: 
http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/python/qpid/qmfconsole.py?rev=703164&r1=703163&r2=703164&view=diff
==============================================================================
--- incubator/qpid/trunk/qpid/python/qpid/qmfconsole.py (original)
+++ incubator/qpid/trunk/qpid/python/qpid/qmfconsole.py Thu Oct  9 06:47:48 2008
@@ -1201,6 +1201,7 @@
     if self.severity == 5 : return "NOTIC"
     if self.severity == 6 : return "INFO "
     if self.severity == 7 : return "DEBUG"
+    return "INV-%d" % self.severity
 
   def getClassKey(self):
     return self.classKey


Reply via email to