OpenMAMA
MamdaNewsHeadline.h
Go to the documentation of this file.
1 /* $Id$
2  *
3  * OpenMAMA: The open middleware agnostic messaging API
4  * Copyright (C) 2011 NYSE Technologies, Inc.
5  *
6  * This library is free software; you can redistribute it and/or
7  * modify it under the terms of the GNU Lesser General Public
8  * License as published by the Free Software Foundation; either
9  * version 2.1 of the License, or (at your option) any later version.
10  *
11  * This library is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14  * Lesser General Public License for more details.
15  *
16  * You should have received a copy of the GNU Lesser General Public
17  * License along with this library; if not, write to the Free Software
18  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
19  * 02110-1301 USA
20  */
21 
22 #ifndef MamdaNewsHeadlineH
23 #define MamdaNewsHeadlineH
24 
27 #include <mama/mamacpp.h>
28 
29 namespace Wombat
30 {
31 
32  class MamdaSubscription;
33  class MamdaSource;
34  class MamaQueue;
35 
47  class MAMDAOPTExpDLL MamdaNewsHeadline : public MamdaNewsMetaData
48  {
49  public:
54 
59 
63  virtual ~MamdaNewsHeadline ();
64 
68  virtual MamdaNewsHeadline& operator= (const MamdaNewsHeadline& rhs);
69 
73  virtual const char* getHeadlineText() const;
74 
78  virtual MamdaNewsHeadlineId getHeadlineId() const;
79 
83  virtual MamdaNewsStoryId getNewsStoryId() const;
84 
88  virtual MamdaNewsStoryId getNewsOrigStoryId() const;
89 
93  virtual bool getNewsHasStory() const;
94 
98  virtual const char* getNewsSourceId() const;
99 
104  virtual const char* getNewsOrigSourceId() const;
105 
109  virtual const char* getLanguageId() const;
110 
115  virtual void getNativeCodes (const char**& codes,
116  mama_size_t& numCodes) const;
117 
122  virtual void getNativeRelatedSymbols (const char**& symbols,
123  mama_size_t& numSymbols) const;
124 
129  virtual void getIndustries (const char**& industries,
130  mama_size_t& numIndustries) const;
131 
136  virtual void getMarketSectors (const char**& marketSectors,
137  mama_size_t& numMarketSectors) const;
138 
143  virtual void getRegions (const char**& regions,
144  mama_size_t& numRegions) const;
145 
150  virtual void getCountries (const char**& countries,
151  mama_size_t& numCountries) const;
152 
157  virtual void getProducts (const char**& products,
158  mama_size_t& numProducts) const;
159 
164  virtual void getTopics (const char**& topics,
165  mama_size_t& numTopics) const;
166 
172  virtual void getMiscCodes (const char**& miscCodes,
173  mama_size_t& numMiscCodes) const;
174 
179  virtual void getRelatedSymbols (const char**& symbols,
180  mama_size_t& numSymbols) const;
181 
186  virtual MamdaNewsPriority getNewsPriority() const;
187 
192  virtual mama_u16_t getNewsStoryRevNumber() const;
193 
197  virtual const MamaDateTime& getNewsOrigStoryTime() const;
198 
199  // Inherited from MamdaBasicEvent:
200  virtual const char* getSymbol () const;
201  virtual const char* getPartId () const;
202  virtual const MamaDateTime& getSrcTime () const;
203  virtual const MamaDateTime& getActivityTime () const;
204  virtual const MamaDateTime& getLineTime () const;
205  virtual const MamaDateTime& getSendTime () const;
206  virtual const MamaMsgQual& getMsgQual () const;
207  virtual const MamaDateTime& getEventTime () const;
208  virtual mama_seqnum_t getEventSeqNum () const;
209 
210  MamdaFieldState getSymbolFieldState () const;
211  MamdaFieldState getPartIdFieldState () const;
212  MamdaFieldState getSrcTimeFieldState () const;
213  MamdaFieldState getActivityTimeFieldState () const;
214  MamdaFieldState getLineTimeFieldState () const;
215  MamdaFieldState getSendTimeFieldState () const;
216  MamdaFieldState getMsgQualFieldState () const;
217  MamdaFieldState getEventTimeFieldState () const;
218  MamdaFieldState getEventSeqNumFieldState () const;
219 
220 
221  void setHeadlineText (const char* headlineText);
222  void setHeadlineId (const char* headlineId);
223  void setStoryId (const char* storyId);
224  void setHasStory (bool hasStory);
225  void setSourceId (const char* source);
226  void setOrigStoryId (const char* storyId);
227  void setOrigSourceId (const char* origSourceId);
228  void setLanguageId (const char* langId);
229  void setNativeCodes (const char** codes,
230  mama_size_t numCodes);
231  void setNativeRelatedSymbols (const char** symbols,
232  mama_size_t numSymbols);
233  void setIndustries (const char** industries,
234  mama_size_t numIndustries);
235  void setMarketSectors (const char** marketSectors,
236  mama_size_t numMarketSectors);
237  void setRegions (const char** regions,
238  mama_size_t numRegions);
239  void setCountries (const char** countries,
240  mama_size_t numCountries);
241  void setProducts (const char** products,
242  mama_size_t numProducts);
243  void setTopics (const char** topics,
244  mama_size_t numTopics);
245  void setMiscCodes (const char** codes,
246  mama_size_t numCodes);
247  void setRelatedSymbols (const char** symbols,
248  mama_size_t numSymbols);
249  void setPriority (MamdaNewsPriority priority);
250  void setStoryRevNumber (mama_u16_t storyRevNum);
251  void setEventSeqNum (mama_seqnum_t seqNum);
252  void setEventTime (const MamaDateTime& eventTime);
253  void setOrigStoryTime (const MamaDateTime& storyTime);
254  void setSrcTime (const MamaDateTime& srcTime);
255  void setActivityTime (const MamaDateTime& actTime);
256  void setLineTime (const MamaDateTime& lineTime);
257  void setSendTime (const MamaDateTime& sendTime);
258  void setMsgQual (const MamaMsgQual& msgQualifier);
259  void clear ();
260 
261  public:
262 
267  void setSubscriptionInfo (MamdaSubscription* subsc);
268 
269  void setSubscInfo (MamaQueue* queue,
270  MamaSource* source);
271 
276  MamaQueue* getQueue () const;
277  MamaSource* getSource () const;
278 
279  private:
280  struct MamdaNewsHeadlineImpl;
281  MamdaNewsHeadlineImpl& mImpl;
282  };
283 
284 } // namespace
285 
286 #endif // MamdaNewsHeadlineH


© 2012 Linux Foundation