summaryrefslogtreecommitdiff
path: root/indra/llmessage/llareslistener.h
blob: bf093b3d3d79bfb17dadf5e98cf2ff62c695bb51 (plain)
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
/**
 * @file   llareslistener.h
 * @author Nat Goodspeed
 * @date   2009-03-18
 * @brief  LLEventPump API for LLAres. This header doesn't actually define the
 *         API; the API is defined by the pump name on which this class
 *         listens, and by the expected content of LLSD it receives.
 * 
 * $LicenseInfo:firstyear=2009&license=viewergpl$
 * Copyright (c) 2009, Linden Research, Inc.
 * $/LicenseInfo$
 */

#if ! defined(LL_LLARESLISTENER_H)
#define LL_LLARESLISTENER_H

#include "lleventdispatcher.h"

class LLAres;
class LLSD;

/// Listen on an LLEventPump with specified name for LLAres request events.
class LLAresListener: public LLDispatchListener
{
public:
    /// Specify the pump name on which to listen, and bind the LLAres instance
    /// to use (e.g. gAres)
    LLAresListener(const std::string& pumpname, LLAres* llares);

private:
    /// command["op"] == "rewriteURI" 
    void rewriteURI(const LLSD& data);

    LLAres* mAres;
};

#endif /* ! defined(LL_LLARESLISTENER_H) */