m2etis  0.4
BaseValidity.h
Go to the documentation of this file.
1 /*
2  Copyright (2016) Michael Baer, Daniel Bonrath, All rights reserved.
3 
4  Licensed under the Apache License, Version 2.0 (the "License");
5  you may not use this file except in compliance with the License.
6  You may obtain a copy of the License at
7 
8  http://www.apache.org/licenses/LICENSE-2.0
9 
10  Unless required by applicable law or agreed to in writing, software
11  distributed under the License is distributed on an "AS IS" BASIS,
12  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  See the License for the specific language governing permissions and
14  limitations under the License.
15  */
16 
22 #ifndef __M2ETIS_PUBSUB_VALIDITY_BASEVALIDITY_H__
23 #define __M2ETIS_PUBSUB_VALIDITY_BASEVALIDITY_H__
24 
26 
27 namespace m2etis {
28 namespace pubsub {
29 namespace validity {
30 
31  class BaseValidity {
32  public:
34  virtual ~BaseValidity() {}
35 
39  virtual void configureValidityInfo(message::ValidityInfo::Ptr vInfo) = 0;
40 
44  virtual void processPublishPayload(message::ValidityInfo::Ptr vInfo) = 0;
45 
49  virtual void processNotifyPayload(message::ValidityInfo::Ptr vInfo) = 0;
50 
54  virtual bool isValid(message::ValidityInfo::Ptr vInfo) = 0;
55  };
56 
57 } /* namespace validity */
58 } /* namespace pubsub */
59 } /* namespace m2etis */
60 
61 #endif /* __M2ETIS_PUBSUB_VALIDITY_BASEVALIDITY_H__ */
62 
virtual void processPublishPayload(message::ValidityInfo::Ptr vInfo)=0
processes received Publish message
virtual void processNotifyPayload(message::ValidityInfo::Ptr vInfo)=0
processes received Notify message
virtual void configureValidityInfo(message::ValidityInfo::Ptr vInfo)=0
configures ValidityInfo before sending
virtual bool isValid(message::ValidityInfo::Ptr vInfo)=0
checks whether a message is valid or has to be stopped
BaseValidity(PubSubSystemEnvironment *)
Definition: BaseValidity.h:33
boost::shared_ptr< ValidityInfo > Ptr
Definition: ValidityInfo.h:31