MySQL 5.6.14 Source Code Document
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
DbtuxProxy.hpp
1 /* Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved.
2 
3  This program is free software; you can redistribute it and/or modify
4  it under the terms of the GNU General Public License as published by
5  the Free Software Foundation; version 2 of the License.
6 
7  This program is distributed in the hope that it will be useful,
8  but WITHOUT ANY WARRANTY; without even the implied warranty of
9  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10  GNU General Public License for more details.
11 
12  You should have received a copy of the GNU General Public License
13  along with this program; if not, write to the Free Software
14  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
15 
16 #ifndef NDB_DBTUX_PROXY_HPP
17 #define NDB_DBTUX_PROXY_HPP
18 
19 #include <LocalProxy.hpp>
20 #include <signaldata/AlterIndxImpl.hpp>
21 #include <signaldata/DropTab.hpp>
22 #include <signaldata/IndexStatSignal.hpp>
23 
24 class DbtuxProxy : public LocalProxy {
25 public:
27  virtual ~DbtuxProxy();
28  BLOCK_DEFINES(DbtuxProxy);
29 
30 protected:
31  virtual SimulatedBlock* newWorker(Uint32 instanceNo);
32 
33  // GSN_ALTER_INDX_IMPL_REQ
35  AlterIndxImplReq m_req;
37  m_sendREQ = (SsFUNCREQ)&DbtuxProxy::sendALTER_INDX_IMPL_REQ;
38  m_sendCONF = (SsFUNCREP)&DbtuxProxy::sendALTER_INDX_IMPL_CONF;
39  }
40  enum { poolSize = 1 };
41  static SsPool<Ss_ALTER_INDX_IMPL_REQ>& pool(LocalProxy* proxy) {
42  return ((DbtuxProxy*)proxy)->c_ss_ALTER_INDX_IMPL_REQ;
43  }
44  };
45  SsPool<Ss_ALTER_INDX_IMPL_REQ> c_ss_ALTER_INDX_IMPL_REQ;
46  void execALTER_INDX_IMPL_REQ(Signal*);
47  void sendALTER_INDX_IMPL_REQ(Signal*, Uint32 ssId, SectionHandle*);
48  void execALTER_INDX_IMPL_CONF(Signal*);
49  void execALTER_INDX_IMPL_REF(Signal*);
50  void sendALTER_INDX_IMPL_CONF(Signal*, Uint32 ssId);
51 
52  // GSN_INDEX_STAT_IMPL_REQ
54  IndexStatImplReq m_req;
56  m_sendREQ = (SsFUNCREQ)&DbtuxProxy::sendINDEX_STAT_IMPL_REQ;
57  m_sendCONF = (SsFUNCREP)&DbtuxProxy::sendINDEX_STAT_IMPL_CONF;
58  }
59  enum { poolSize = 1 };
60  static SsPool<Ss_INDEX_STAT_IMPL_REQ>& pool(LocalProxy* proxy) {
61  return ((DbtuxProxy*)proxy)->c_ss_INDEX_STAT_IMPL_REQ;
62  }
63  };
64  SsPool<Ss_INDEX_STAT_IMPL_REQ> c_ss_INDEX_STAT_IMPL_REQ;
65  void execINDEX_STAT_IMPL_REQ(Signal*);
66  void sendINDEX_STAT_IMPL_REQ(Signal*, Uint32 ssId, SectionHandle*);
67  void execINDEX_STAT_IMPL_CONF(Signal*);
68  void execINDEX_STAT_IMPL_REF(Signal*);
69  void sendINDEX_STAT_IMPL_CONF(Signal*, Uint32 ssId);
70 
71  // GSN_INDEX_STAT_REP
73  IndexStatRep m_rep;
75  m_sendREQ = (SsFUNCREQ)&DbtuxProxy::sendINDEX_STAT_REP;
76  m_sendCONF = 0;
77  }
78  enum { poolSize = 1 };
79  static SsPool<Ss_INDEX_STAT_REP>& pool(LocalProxy* proxy) {
80  return ((DbtuxProxy*)proxy)->c_ss_INDEX_STAT_REP;
81  }
82  };
83  SsPool<Ss_INDEX_STAT_REP> c_ss_INDEX_STAT_REP;
84  void execINDEX_STAT_REP(Signal*);
85  void sendINDEX_STAT_REP(Signal*, Uint32 ssId, SectionHandle*);
86 };
87 
88 #endif