MySQL 5.6.14 Source Code Document
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
DropObj.hpp
1 /*
2  Copyright (C) 2005, 2006 MySQL AB
3  All rights reserved. Use is subject to license terms.
4 
5  This program is free software; you can redistribute it and/or modify
6  it under the terms of the GNU General Public License as published by
7  the Free Software Foundation; version 2 of the License.
8 
9  This program is distributed in the hope that it will be useful,
10  but WITHOUT ANY WARRANTY; without even the implied warranty of
11  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12  GNU General Public License for more details.
13 
14  You should have received a copy of the GNU General Public License
15  along with this program; if not, write to the Free Software
16  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
17 */
18 
19 #ifndef DROP_OBJ_HPP
20 #define DROP_OBJ_HPP
21 
22 #include "DictObjOp.hpp"
23 #include "SignalData.hpp"
24 
25 struct DropObjReq
26 {
30  friend class Dbdict;
31 
35  friend class Dbtc;
36  friend class Dblqh;
37  friend class Dbacc;
38  friend class Dbtup;
39  friend class Dbtux;
40  friend class Dbdih;
41 
42  friend bool printDROP_OBJ_REQ(FILE *, const Uint32 *, Uint32, Uint16);
43  STATIC_CONST( SignalLength = 9 );
44 
45  Uint32 op_key;
46  Uint32 objId;
47  Uint32 objType;
48  Uint32 objVersion;
49 
50  Uint32 senderRef;
51  Uint32 senderData;
52 
53  Uint32 requestInfo;
54 
55  Uint32 clientRef;
56  Uint32 clientData;
57 };
58 
59 class DropObjConf {
63  friend class Dbtc;
64  friend class Dblqh;
65  friend class Dbacc;
66  friend class Dbtup;
67  friend class Dbtux;
68  friend class Dbdih;
69 
73  friend class Dbdict;
74 
75  friend bool printDROP_OBJ_CONF(FILE *, const Uint32 *, Uint32, Uint16);
76 public:
77  STATIC_CONST( SignalLength = 3 );
78 
79 private:
80  Uint32 senderRef;
81  Uint32 senderData;
82  Uint32 objId;
83 };
84 
85 class DropObjRef {
89  friend class Dbtc;
90  friend class Dblqh;
91  friend class Dbacc;
92  friend class Dbtup;
93  friend class Dbtux;
94  friend class Dbdih;
95 
99  friend class Dbdict;
100 
101  friend bool printDROP_OBJ_REF(FILE *, const Uint32 *, Uint32, Uint16);
102 public:
103  STATIC_CONST( SignalLength = 4 );
104 
105  enum ErrorCode {
106  NoSuchObj = 1,
107  DropWoPrep = 2, // Calling Drop with first calling PrepDrop
108  PrepDropInProgress = 3,
109  DropInProgress = 4,
110  NF_FakeErrorREF = 5
111  };
112 
113 private:
114  Uint32 senderRef;
115  Uint32 senderData;
116  Uint32 objId;
117  Uint32 errorCode;
118 };
119 
120 #endif