This file is indexed.

/usr/include/mamda/MamdaBasicSubscription.h is in libmamda-dev 2.2.2.1-10.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
/* $Id$
 *
 * OpenMAMA: The open middleware agnostic messaging API
 * Copyright (C) 2011 NYSE Technologies, Inc.
 *
 * This library is free software; you can redistribute it and/or
 * modify it under the terms of the GNU Lesser General Public
 * License as published by the Free Software Foundation; either
 * version 2.1 of the License, or (at your option) any later version.
 *
 * This library is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 * Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public
 * License along with this library; if not, write to the Free Software
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
 * 02110-1301 USA
 */

#ifndef MamdaBasicSubscriptionH
#define MamdaBasicSubscriptionH

#include <mamda/MamdaConfig.h>
#include <mama/subscriptiontype.h>
#include <mama/mamacpp.h>

namespace Wombat
{

    class MamaTransport;
    class MamaQueue;

    class MamdaBasicMsgListener;
    class MamdaBasicQualityListener;
    class MamdaBasicErrorListener;


    /**
     * A MamdaBasicSubscription is used to register interest in a particular
     * symbol. A MamaTransport is required to actually
     * activate the subscription.
     *
     * Multiple listeners can be added to the MamdaBasicSubscription.  In this
     * way, an application can make use of more than one of the
     * specialized value added MAMDA listeners, such as MamdaCalcListener
     */

    class MAMDAExpDLL MamdaBasicSubscription
    {
    public:

        MamdaBasicSubscription ();

        ~MamdaBasicSubscription ();

        /**
        * Create and activate the subscription. You can alternatively set all
        * objects and properties and then call activate is you wish.
        */
        void create (
            MamaTransport*   transport,
            MamaQueue*       queue,
            const char*      symbol,
            void*            closure = NULL);

        /**
         * Set the subscription timeout (in seconds).  Do this before
         * calling activate().
         */
        void setTimeout (double  timeout);

        /**
         * Add a listener for regular messages.  
         */
        void addMsgListener (MamdaBasicMsgListener*  listener);

        /**
         * Add a listener for changes in quality status.  
         */
        void addQualityListener (MamdaBasicQualityListener*  listener);

        /**
         * Add a listener for error events.  
         */
        void addErrorListener (MamdaBasicErrorListener*  listener);

        /**
         * Activate the subscription.  Until this method is invoked, no
         * updates will be received. Is called by create().
         */
        void activate ();

        /**
         * Deactivate the subscription.  No more updates will be received
         * for this subscription (unless activate() is invoked again).
         */
        void deactivate ();
        
        /**
         * Set the symbol for the subscription. Do this before calling activate().
         */
        void setSymbol (const char* symbol);
        
        /**
         * Get the symbol for the subscription.
         */
        const char* getSymbol () const;

        /**
         * Set the closure for the subscription. Do this before calling
         * activate().
         */
        void setClosure (void* closure);
        
        /**
         * Get the additional object passed as the closure to the create()
         * method.
         */
        void* getClosure() const;

        /**
         * Set the MAMA transport. Do this before calling activate().
         */
        void setTransport (MamaTransport* transport);

        /**
         * Get the MamaTransport for this subscription
         */
        MamaTransport* getTransport() const;

        /**
         * Set the MAMA queue. Do this before calling activate().
         */
        void setQueue (MamaQueue* queue);
        
        /**
         * Get the MAMA queue for this subscription.
         */
        MamaQueue* getQueue() const;

    private:
        struct MamdaBasicSubscriptionImpl;
        MamdaBasicSubscriptionImpl& mImpl;
    };

} // namespace

#endif // MamdaBasicSubscriptionH