You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@drill.apache.org by jn...@apache.org on 2017/03/02 20:59:39 UTC
[12/27] drill git commit: DRILL-5301: Server metadata API
http://git-wip-us.apache.org/repos/asf/drill/blob/d2e0f415/protocol/src/main/java/org/apache/drill/exec/proto/beans/CollateSupport.java
----------------------------------------------------------------------
diff --git a/protocol/src/main/java/org/apache/drill/exec/proto/beans/CollateSupport.java b/protocol/src/main/java/org/apache/drill/exec/proto/beans/CollateSupport.java
new file mode 100644
index 0000000..599bf86
--- /dev/null
+++ b/protocol/src/main/java/org/apache/drill/exec/proto/beans/CollateSupport.java
@@ -0,0 +1,49 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+// Generated by http://code.google.com/p/protostuff/ ... DO NOT EDIT!
+// Generated from protobuf
+
+package org.apache.drill.exec.proto.beans;
+
+public enum CollateSupport implements com.dyuproject.protostuff.EnumLite<CollateSupport>
+{
+ CS_UNKNOWN(0),
+ CS_GROUP_BY(1);
+
+ public final int number;
+
+ private CollateSupport (int number)
+ {
+ this.number = number;
+ }
+
+ public int getNumber()
+ {
+ return number;
+ }
+
+ public static CollateSupport valueOf(int number)
+ {
+ switch(number)
+ {
+ case 0: return CS_UNKNOWN;
+ case 1: return CS_GROUP_BY;
+ default: return null;
+ }
+ }
+}
http://git-wip-us.apache.org/repos/asf/drill/blob/d2e0f415/protocol/src/main/java/org/apache/drill/exec/proto/beans/ConvertSupport.java
----------------------------------------------------------------------
diff --git a/protocol/src/main/java/org/apache/drill/exec/proto/beans/ConvertSupport.java b/protocol/src/main/java/org/apache/drill/exec/proto/beans/ConvertSupport.java
new file mode 100644
index 0000000..1c2396c
--- /dev/null
+++ b/protocol/src/main/java/org/apache/drill/exec/proto/beans/ConvertSupport.java
@@ -0,0 +1,199 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+// Generated by http://code.google.com/p/protostuff/ ... DO NOT EDIT!
+// Generated from protobuf
+
+package org.apache.drill.exec.proto.beans;
+
+import java.io.Externalizable;
+import java.io.IOException;
+import java.io.ObjectInput;
+import java.io.ObjectOutput;
+
+import com.dyuproject.protostuff.GraphIOUtil;
+import com.dyuproject.protostuff.Input;
+import com.dyuproject.protostuff.Message;
+import com.dyuproject.protostuff.Output;
+import com.dyuproject.protostuff.Schema;
+import com.dyuproject.protostuff.UninitializedMessageException;
+
+public final class ConvertSupport implements Externalizable, Message<ConvertSupport>, Schema<ConvertSupport>
+{
+
+ public static Schema<ConvertSupport> getSchema()
+ {
+ return DEFAULT_INSTANCE;
+ }
+
+ public static ConvertSupport getDefaultInstance()
+ {
+ return DEFAULT_INSTANCE;
+ }
+
+ static final ConvertSupport DEFAULT_INSTANCE = new ConvertSupport();
+
+
+ private org.apache.drill.common.types.MinorType from;
+ private org.apache.drill.common.types.MinorType to;
+
+ public ConvertSupport()
+ {
+
+ }
+
+ public ConvertSupport(
+ org.apache.drill.common.types.MinorType from,
+ org.apache.drill.common.types.MinorType to
+ )
+ {
+ this.from = from;
+ this.to = to;
+ }
+
+ // getters and setters
+
+ // from
+
+ public org.apache.drill.common.types.MinorType getFrom()
+ {
+ return from;
+ }
+
+ public ConvertSupport setFrom(org.apache.drill.common.types.MinorType from)
+ {
+ this.from = from;
+ return this;
+ }
+
+ // to
+
+ public org.apache.drill.common.types.MinorType getTo()
+ {
+ return to;
+ }
+
+ public ConvertSupport setTo(org.apache.drill.common.types.MinorType to)
+ {
+ this.to = to;
+ return this;
+ }
+
+ // java serialization
+
+ public void readExternal(ObjectInput in) throws IOException
+ {
+ GraphIOUtil.mergeDelimitedFrom(in, this, this);
+ }
+
+ public void writeExternal(ObjectOutput out) throws IOException
+ {
+ GraphIOUtil.writeDelimitedTo(out, this, this);
+ }
+
+ // message method
+
+ public Schema<ConvertSupport> cachedSchema()
+ {
+ return DEFAULT_INSTANCE;
+ }
+
+ // schema methods
+
+ public ConvertSupport newMessage()
+ {
+ return new ConvertSupport();
+ }
+
+ public Class<ConvertSupport> typeClass()
+ {
+ return ConvertSupport.class;
+ }
+
+ public String messageName()
+ {
+ return ConvertSupport.class.getSimpleName();
+ }
+
+ public String messageFullName()
+ {
+ return ConvertSupport.class.getName();
+ }
+
+ public boolean isInitialized(ConvertSupport message)
+ {
+ return
+ message.from != null
+ && message.to != null;
+ }
+
+ public void mergeFrom(Input input, ConvertSupport message) throws IOException
+ {
+ for(int number = input.readFieldNumber(this);; number = input.readFieldNumber(this))
+ {
+ switch(number)
+ {
+ case 0:
+ return;
+ case 1:
+ message.from = org.apache.drill.common.types.MinorType.valueOf(input.readEnum());
+ break;
+ case 2:
+ message.to = org.apache.drill.common.types.MinorType.valueOf(input.readEnum());
+ break;
+ default:
+ input.handleUnknownField(number, this);
+ }
+ }
+ }
+
+
+ public void writeTo(Output output, ConvertSupport message) throws IOException
+ {
+ if(message.from == null)
+ throw new UninitializedMessageException(message);
+ output.writeEnum(1, message.from.number, false);
+
+ if(message.to == null)
+ throw new UninitializedMessageException(message);
+ output.writeEnum(2, message.to.number, false);
+ }
+
+ public String getFieldName(int number)
+ {
+ switch(number)
+ {
+ case 1: return "from";
+ case 2: return "to";
+ default: return null;
+ }
+ }
+
+ public int getFieldNumber(String name)
+ {
+ final Integer number = __fieldMap.get(name);
+ return number == null ? 0 : number.intValue();
+ }
+
+ private static final java.util.HashMap<String,Integer> __fieldMap = new java.util.HashMap<String,Integer>();
+ static
+ {
+ __fieldMap.put("from", 1);
+ __fieldMap.put("to", 2);
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/drill/blob/d2e0f415/protocol/src/main/java/org/apache/drill/exec/proto/beans/CorrelationNamesSupport.java
----------------------------------------------------------------------
diff --git a/protocol/src/main/java/org/apache/drill/exec/proto/beans/CorrelationNamesSupport.java b/protocol/src/main/java/org/apache/drill/exec/proto/beans/CorrelationNamesSupport.java
new file mode 100644
index 0000000..faf46c1
--- /dev/null
+++ b/protocol/src/main/java/org/apache/drill/exec/proto/beans/CorrelationNamesSupport.java
@@ -0,0 +1,51 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+// Generated by http://code.google.com/p/protostuff/ ... DO NOT EDIT!
+// Generated from protobuf
+
+package org.apache.drill.exec.proto.beans;
+
+public enum CorrelationNamesSupport implements com.dyuproject.protostuff.EnumLite<CorrelationNamesSupport>
+{
+ CN_NONE(1),
+ CN_DIFFERENT_NAMES(2),
+ CN_ANY(3);
+
+ public final int number;
+
+ private CorrelationNamesSupport (int number)
+ {
+ this.number = number;
+ }
+
+ public int getNumber()
+ {
+ return number;
+ }
+
+ public static CorrelationNamesSupport valueOf(int number)
+ {
+ switch(number)
+ {
+ case 1: return CN_NONE;
+ case 2: return CN_DIFFERENT_NAMES;
+ case 3: return CN_ANY;
+ default: return null;
+ }
+ }
+}
http://git-wip-us.apache.org/repos/asf/drill/blob/d2e0f415/protocol/src/main/java/org/apache/drill/exec/proto/beans/DateTimeLiteralsSupport.java
----------------------------------------------------------------------
diff --git a/protocol/src/main/java/org/apache/drill/exec/proto/beans/DateTimeLiteralsSupport.java b/protocol/src/main/java/org/apache/drill/exec/proto/beans/DateTimeLiteralsSupport.java
new file mode 100644
index 0000000..a2330ed
--- /dev/null
+++ b/protocol/src/main/java/org/apache/drill/exec/proto/beans/DateTimeLiteralsSupport.java
@@ -0,0 +1,79 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+// Generated by http://code.google.com/p/protostuff/ ... DO NOT EDIT!
+// Generated from protobuf
+
+package org.apache.drill.exec.proto.beans;
+
+public enum DateTimeLiteralsSupport implements com.dyuproject.protostuff.EnumLite<DateTimeLiteralsSupport>
+{
+ DL_UNKNOWN(0),
+ DL_DATE(1),
+ DL_TIME(2),
+ DL_TIMESTAMP(3),
+ DL_INTERVAL_YEAR(4),
+ DL_INTERVAL_MONTH(5),
+ DL_INTERVAL_DAY(6),
+ DL_INTERVAL_HOUR(7),
+ DL_INTERVAL_MINUTE(8),
+ DL_INTERVAL_SECOND(9),
+ DL_INTERVAL_YEAR_TO_MONTH(10),
+ DL_INTERVAL_DAY_TO_HOUR(11),
+ DL_INTERVAL_DAY_TO_MINUTE(12),
+ DL_INTERVAL_DAY_TO_SECOND(13),
+ DL_INTERVAL_HOUR_TO_MINUTE(14),
+ DL_INTERVAL_HOUR_TO_SECOND(15),
+ DL_INTERVAL_MINUTE_TO_SECOND(16);
+
+ public final int number;
+
+ private DateTimeLiteralsSupport (int number)
+ {
+ this.number = number;
+ }
+
+ public int getNumber()
+ {
+ return number;
+ }
+
+ public static DateTimeLiteralsSupport valueOf(int number)
+ {
+ switch(number)
+ {
+ case 0: return DL_UNKNOWN;
+ case 1: return DL_DATE;
+ case 2: return DL_TIME;
+ case 3: return DL_TIMESTAMP;
+ case 4: return DL_INTERVAL_YEAR;
+ case 5: return DL_INTERVAL_MONTH;
+ case 6: return DL_INTERVAL_DAY;
+ case 7: return DL_INTERVAL_HOUR;
+ case 8: return DL_INTERVAL_MINUTE;
+ case 9: return DL_INTERVAL_SECOND;
+ case 10: return DL_INTERVAL_YEAR_TO_MONTH;
+ case 11: return DL_INTERVAL_DAY_TO_HOUR;
+ case 12: return DL_INTERVAL_DAY_TO_MINUTE;
+ case 13: return DL_INTERVAL_DAY_TO_SECOND;
+ case 14: return DL_INTERVAL_HOUR_TO_MINUTE;
+ case 15: return DL_INTERVAL_HOUR_TO_SECOND;
+ case 16: return DL_INTERVAL_MINUTE_TO_SECOND;
+ default: return null;
+ }
+ }
+}
http://git-wip-us.apache.org/repos/asf/drill/blob/d2e0f415/protocol/src/main/java/org/apache/drill/exec/proto/beans/GetServerMetaResp.java
----------------------------------------------------------------------
diff --git a/protocol/src/main/java/org/apache/drill/exec/proto/beans/GetServerMetaResp.java b/protocol/src/main/java/org/apache/drill/exec/proto/beans/GetServerMetaResp.java
new file mode 100644
index 0000000..32c84db
--- /dev/null
+++ b/protocol/src/main/java/org/apache/drill/exec/proto/beans/GetServerMetaResp.java
@@ -0,0 +1,211 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+// Generated by http://code.google.com/p/protostuff/ ... DO NOT EDIT!
+// Generated from protobuf
+
+package org.apache.drill.exec.proto.beans;
+
+import java.io.Externalizable;
+import java.io.IOException;
+import java.io.ObjectInput;
+import java.io.ObjectOutput;
+
+import com.dyuproject.protostuff.GraphIOUtil;
+import com.dyuproject.protostuff.Input;
+import com.dyuproject.protostuff.Message;
+import com.dyuproject.protostuff.Output;
+import com.dyuproject.protostuff.Schema;
+
+public final class GetServerMetaResp implements Externalizable, Message<GetServerMetaResp>, Schema<GetServerMetaResp>
+{
+
+ public static Schema<GetServerMetaResp> getSchema()
+ {
+ return DEFAULT_INSTANCE;
+ }
+
+ public static GetServerMetaResp getDefaultInstance()
+ {
+ return DEFAULT_INSTANCE;
+ }
+
+ static final GetServerMetaResp DEFAULT_INSTANCE = new GetServerMetaResp();
+
+
+ private RequestStatus status;
+ private ServerMeta serverMeta;
+ private DrillPBError error;
+
+ public GetServerMetaResp()
+ {
+
+ }
+
+ // getters and setters
+
+ // status
+
+ public RequestStatus getStatus()
+ {
+ return status == null ? RequestStatus.UNKNOWN_STATUS : status;
+ }
+
+ public GetServerMetaResp setStatus(RequestStatus status)
+ {
+ this.status = status;
+ return this;
+ }
+
+ // serverMeta
+
+ public ServerMeta getServerMeta()
+ {
+ return serverMeta;
+ }
+
+ public GetServerMetaResp setServerMeta(ServerMeta serverMeta)
+ {
+ this.serverMeta = serverMeta;
+ return this;
+ }
+
+ // error
+
+ public DrillPBError getError()
+ {
+ return error;
+ }
+
+ public GetServerMetaResp setError(DrillPBError error)
+ {
+ this.error = error;
+ return this;
+ }
+
+ // java serialization
+
+ public void readExternal(ObjectInput in) throws IOException
+ {
+ GraphIOUtil.mergeDelimitedFrom(in, this, this);
+ }
+
+ public void writeExternal(ObjectOutput out) throws IOException
+ {
+ GraphIOUtil.writeDelimitedTo(out, this, this);
+ }
+
+ // message method
+
+ public Schema<GetServerMetaResp> cachedSchema()
+ {
+ return DEFAULT_INSTANCE;
+ }
+
+ // schema methods
+
+ public GetServerMetaResp newMessage()
+ {
+ return new GetServerMetaResp();
+ }
+
+ public Class<GetServerMetaResp> typeClass()
+ {
+ return GetServerMetaResp.class;
+ }
+
+ public String messageName()
+ {
+ return GetServerMetaResp.class.getSimpleName();
+ }
+
+ public String messageFullName()
+ {
+ return GetServerMetaResp.class.getName();
+ }
+
+ public boolean isInitialized(GetServerMetaResp message)
+ {
+ return true;
+ }
+
+ public void mergeFrom(Input input, GetServerMetaResp message) throws IOException
+ {
+ for(int number = input.readFieldNumber(this);; number = input.readFieldNumber(this))
+ {
+ switch(number)
+ {
+ case 0:
+ return;
+ case 1:
+ message.status = RequestStatus.valueOf(input.readEnum());
+ break;
+ case 2:
+ message.serverMeta = input.mergeObject(message.serverMeta, ServerMeta.getSchema());
+ break;
+
+ case 3:
+ message.error = input.mergeObject(message.error, DrillPBError.getSchema());
+ break;
+
+ default:
+ input.handleUnknownField(number, this);
+ }
+ }
+ }
+
+
+ public void writeTo(Output output, GetServerMetaResp message) throws IOException
+ {
+ if(message.status != null)
+ output.writeEnum(1, message.status.number, false);
+
+ if(message.serverMeta != null)
+ output.writeObject(2, message.serverMeta, ServerMeta.getSchema(), false);
+
+
+ if(message.error != null)
+ output.writeObject(3, message.error, DrillPBError.getSchema(), false);
+
+ }
+
+ public String getFieldName(int number)
+ {
+ switch(number)
+ {
+ case 1: return "status";
+ case 2: return "serverMeta";
+ case 3: return "error";
+ default: return null;
+ }
+ }
+
+ public int getFieldNumber(String name)
+ {
+ final Integer number = __fieldMap.get(name);
+ return number == null ? 0 : number.intValue();
+ }
+
+ private static final java.util.HashMap<String,Integer> __fieldMap = new java.util.HashMap<String,Integer>();
+ static
+ {
+ __fieldMap.put("status", 1);
+ __fieldMap.put("serverMeta", 2);
+ __fieldMap.put("error", 3);
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/drill/blob/d2e0f415/protocol/src/main/java/org/apache/drill/exec/proto/beans/GroupBySupport.java
----------------------------------------------------------------------
diff --git a/protocol/src/main/java/org/apache/drill/exec/proto/beans/GroupBySupport.java b/protocol/src/main/java/org/apache/drill/exec/proto/beans/GroupBySupport.java
new file mode 100644
index 0000000..3b4b79e
--- /dev/null
+++ b/protocol/src/main/java/org/apache/drill/exec/proto/beans/GroupBySupport.java
@@ -0,0 +1,53 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+// Generated by http://code.google.com/p/protostuff/ ... DO NOT EDIT!
+// Generated from protobuf
+
+package org.apache.drill.exec.proto.beans;
+
+public enum GroupBySupport implements com.dyuproject.protostuff.EnumLite<GroupBySupport>
+{
+ GB_NONE(1),
+ GB_SELECT_ONLY(2),
+ GB_BEYOND_SELECT(3),
+ GB_UNRELATED(4);
+
+ public final int number;
+
+ private GroupBySupport (int number)
+ {
+ this.number = number;
+ }
+
+ public int getNumber()
+ {
+ return number;
+ }
+
+ public static GroupBySupport valueOf(int number)
+ {
+ switch(number)
+ {
+ case 1: return GB_NONE;
+ case 2: return GB_SELECT_ONLY;
+ case 3: return GB_BEYOND_SELECT;
+ case 4: return GB_UNRELATED;
+ default: return null;
+ }
+ }
+}
http://git-wip-us.apache.org/repos/asf/drill/blob/d2e0f415/protocol/src/main/java/org/apache/drill/exec/proto/beans/IdentifierCasing.java
----------------------------------------------------------------------
diff --git a/protocol/src/main/java/org/apache/drill/exec/proto/beans/IdentifierCasing.java b/protocol/src/main/java/org/apache/drill/exec/proto/beans/IdentifierCasing.java
new file mode 100644
index 0000000..d991cd6
--- /dev/null
+++ b/protocol/src/main/java/org/apache/drill/exec/proto/beans/IdentifierCasing.java
@@ -0,0 +1,55 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+// Generated by http://code.google.com/p/protostuff/ ... DO NOT EDIT!
+// Generated from protobuf
+
+package org.apache.drill.exec.proto.beans;
+
+public enum IdentifierCasing implements com.dyuproject.protostuff.EnumLite<IdentifierCasing>
+{
+ IC_UNKNOWN(0),
+ IC_STORES_LOWER(1),
+ IC_STORES_MIXED(2),
+ IC_STORES_UPPER(3),
+ IC_SUPPORTS_MIXED(4);
+
+ public final int number;
+
+ private IdentifierCasing (int number)
+ {
+ this.number = number;
+ }
+
+ public int getNumber()
+ {
+ return number;
+ }
+
+ public static IdentifierCasing valueOf(int number)
+ {
+ switch(number)
+ {
+ case 0: return IC_UNKNOWN;
+ case 1: return IC_STORES_LOWER;
+ case 2: return IC_STORES_MIXED;
+ case 3: return IC_STORES_UPPER;
+ case 4: return IC_SUPPORTS_MIXED;
+ default: return null;
+ }
+ }
+}
http://git-wip-us.apache.org/repos/asf/drill/blob/d2e0f415/protocol/src/main/java/org/apache/drill/exec/proto/beans/NullCollation.java
----------------------------------------------------------------------
diff --git a/protocol/src/main/java/org/apache/drill/exec/proto/beans/NullCollation.java b/protocol/src/main/java/org/apache/drill/exec/proto/beans/NullCollation.java
new file mode 100644
index 0000000..62a164a
--- /dev/null
+++ b/protocol/src/main/java/org/apache/drill/exec/proto/beans/NullCollation.java
@@ -0,0 +1,55 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+// Generated by http://code.google.com/p/protostuff/ ... DO NOT EDIT!
+// Generated from protobuf
+
+package org.apache.drill.exec.proto.beans;
+
+public enum NullCollation implements com.dyuproject.protostuff.EnumLite<NullCollation>
+{
+ NC_UNKNOWN(0),
+ NC_AT_START(1),
+ NC_AT_END(2),
+ NC_HIGH(3),
+ NC_LOW(4);
+
+ public final int number;
+
+ private NullCollation (int number)
+ {
+ this.number = number;
+ }
+
+ public int getNumber()
+ {
+ return number;
+ }
+
+ public static NullCollation valueOf(int number)
+ {
+ switch(number)
+ {
+ case 0: return NC_UNKNOWN;
+ case 1: return NC_AT_START;
+ case 2: return NC_AT_END;
+ case 3: return NC_HIGH;
+ case 4: return NC_LOW;
+ default: return null;
+ }
+ }
+}
http://git-wip-us.apache.org/repos/asf/drill/blob/d2e0f415/protocol/src/main/java/org/apache/drill/exec/proto/beans/OrderBySupport.java
----------------------------------------------------------------------
diff --git a/protocol/src/main/java/org/apache/drill/exec/proto/beans/OrderBySupport.java b/protocol/src/main/java/org/apache/drill/exec/proto/beans/OrderBySupport.java
new file mode 100644
index 0000000..5174d8c
--- /dev/null
+++ b/protocol/src/main/java/org/apache/drill/exec/proto/beans/OrderBySupport.java
@@ -0,0 +1,51 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+// Generated by http://code.google.com/p/protostuff/ ... DO NOT EDIT!
+// Generated from protobuf
+
+package org.apache.drill.exec.proto.beans;
+
+public enum OrderBySupport implements com.dyuproject.protostuff.EnumLite<OrderBySupport>
+{
+ OB_UNKNOWN(0),
+ OB_UNRELATED(1),
+ OB_EXPRESSION(2);
+
+ public final int number;
+
+ private OrderBySupport (int number)
+ {
+ this.number = number;
+ }
+
+ public int getNumber()
+ {
+ return number;
+ }
+
+ public static OrderBySupport valueOf(int number)
+ {
+ switch(number)
+ {
+ case 0: return OB_UNKNOWN;
+ case 1: return OB_UNRELATED;
+ case 2: return OB_EXPRESSION;
+ default: return null;
+ }
+ }
+}
http://git-wip-us.apache.org/repos/asf/drill/blob/d2e0f415/protocol/src/main/java/org/apache/drill/exec/proto/beans/OuterJoinSupport.java
----------------------------------------------------------------------
diff --git a/protocol/src/main/java/org/apache/drill/exec/proto/beans/OuterJoinSupport.java b/protocol/src/main/java/org/apache/drill/exec/proto/beans/OuterJoinSupport.java
new file mode 100644
index 0000000..3620416
--- /dev/null
+++ b/protocol/src/main/java/org/apache/drill/exec/proto/beans/OuterJoinSupport.java
@@ -0,0 +1,61 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+// Generated by http://code.google.com/p/protostuff/ ... DO NOT EDIT!
+// Generated from protobuf
+
+package org.apache.drill.exec.proto.beans;
+
+public enum OuterJoinSupport implements com.dyuproject.protostuff.EnumLite<OuterJoinSupport>
+{
+ OJ_UNKNOWN(0),
+ OJ_LEFT(1),
+ OJ_RIGHT(2),
+ OJ_FULL(3),
+ OJ_NESTED(4),
+ OJ_NOT_ORDERED(5),
+ OJ_INNER(6),
+ OJ_ALL_COMPARISON_OPS(7);
+
+ public final int number;
+
+ private OuterJoinSupport (int number)
+ {
+ this.number = number;
+ }
+
+ public int getNumber()
+ {
+ return number;
+ }
+
+ public static OuterJoinSupport valueOf(int number)
+ {
+ switch(number)
+ {
+ case 0: return OJ_UNKNOWN;
+ case 1: return OJ_LEFT;
+ case 2: return OJ_RIGHT;
+ case 3: return OJ_FULL;
+ case 4: return OJ_NESTED;
+ case 5: return OJ_NOT_ORDERED;
+ case 6: return OJ_INNER;
+ case 7: return OJ_ALL_COMPARISON_OPS;
+ default: return null;
+ }
+ }
+}
http://git-wip-us.apache.org/repos/asf/drill/blob/d2e0f415/protocol/src/main/java/org/apache/drill/exec/proto/beans/RpcType.java
----------------------------------------------------------------------
diff --git a/protocol/src/main/java/org/apache/drill/exec/proto/beans/RpcType.java b/protocol/src/main/java/org/apache/drill/exec/proto/beans/RpcType.java
index ae74bcd..8357088 100644
--- a/protocol/src/main/java/org/apache/drill/exec/proto/beans/RpcType.java
+++ b/protocol/src/main/java/org/apache/drill/exec/proto/beans/RpcType.java
@@ -35,6 +35,7 @@ public enum RpcType implements com.dyuproject.protostuff.EnumLite<RpcType>
GET_TABLES(16),
GET_COLUMNS(17),
CREATE_PREPARED_STATEMENT(22),
+ GET_SERVER_META(8),
QUERY_DATA(6),
QUERY_HANDLE(7),
QUERY_PLAN_FRAGMENTS(13),
@@ -43,8 +44,7 @@ public enum RpcType implements com.dyuproject.protostuff.EnumLite<RpcType>
TABLES(20),
COLUMNS(21),
PREPARED_STATEMENT(23),
- REQ_META_FUNCTIONS(8),
- RESP_FUNCTION_LIST(9),
+ SERVER_META(9),
QUERY_RESULT(10),
SASL_MESSAGE(24);
@@ -72,8 +72,8 @@ public enum RpcType implements com.dyuproject.protostuff.EnumLite<RpcType>
case 5: return REQUEST_RESULTS;
case 6: return QUERY_DATA;
case 7: return QUERY_HANDLE;
- case 8: return REQ_META_FUNCTIONS;
- case 9: return RESP_FUNCTION_LIST;
+ case 8: return GET_SERVER_META;
+ case 9: return SERVER_META;
case 10: return QUERY_RESULT;
case 11: return RESUME_PAUSED_QUERY;
case 12: return GET_QUERY_PLAN_FRAGMENTS;
http://git-wip-us.apache.org/repos/asf/drill/blob/d2e0f415/protocol/src/main/java/org/apache/drill/exec/proto/beans/ServerMeta.java
----------------------------------------------------------------------
diff --git a/protocol/src/main/java/org/apache/drill/exec/proto/beans/ServerMeta.java b/protocol/src/main/java/org/apache/drill/exec/proto/beans/ServerMeta.java
new file mode 100644
index 0000000..0a7f020
--- /dev/null
+++ b/protocol/src/main/java/org/apache/drill/exec/proto/beans/ServerMeta.java
@@ -0,0 +1,1319 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+// Generated by http://code.google.com/p/protostuff/ ... DO NOT EDIT!
+// Generated from protobuf
+
+package org.apache.drill.exec.proto.beans;
+
+import java.io.Externalizable;
+import java.io.IOException;
+import java.io.ObjectInput;
+import java.io.ObjectOutput;
+import java.util.ArrayList;
+import java.util.List;
+
+import com.dyuproject.protostuff.GraphIOUtil;
+import com.dyuproject.protostuff.Input;
+import com.dyuproject.protostuff.Message;
+import com.dyuproject.protostuff.Output;
+import com.dyuproject.protostuff.Schema;
+
+public final class ServerMeta implements Externalizable, Message<ServerMeta>, Schema<ServerMeta>
+{
+
+ public static Schema<ServerMeta> getSchema()
+ {
+ return DEFAULT_INSTANCE;
+ }
+
+ public static ServerMeta getDefaultInstance()
+ {
+ return DEFAULT_INSTANCE;
+ }
+
+ static final ServerMeta DEFAULT_INSTANCE = new ServerMeta();
+
+
+ private Boolean allTablesSelectable;
+ private Boolean blobIncludedInMaxRowSize;
+ private Boolean catalogAtStart;
+ private String catalogSeparator;
+ private String catalogTerm;
+ private List<CollateSupport> collateSupport;
+ private Boolean columnAliasingSupported;
+ private List<ConvertSupport> convertSupport;
+ private CorrelationNamesSupport correlationNamesSupport;
+ private List<String> dateTimeFunctions;
+ private List<DateTimeLiteralsSupport> dateTimeLiteralsSupport;
+ private GroupBySupport groupBySupport;
+ private IdentifierCasing identifierCasing;
+ private String identifierQuoteString;
+ private Boolean likeEscapeClauseSupported;
+ private int maxBinaryLiteralLength;
+ private int maxCatalogNameLength;
+ private int maxCharLiteralLength;
+ private int maxColumnNameLength;
+ private int maxColumnsInGroupBy;
+ private int maxColumnsInOrderBy;
+ private int maxColumnsInSelect;
+ private int maxCursorNameLength;
+ private int maxLogicalLobSize;
+ private int maxRowSize;
+ private int maxSchemaNameLength;
+ private int maxStatementLength;
+ private int maxStatements;
+ private int maxTableNameLength;
+ private int maxTablesInSelect;
+ private int maxUserNameLength;
+ private NullCollation nullCollation;
+ private Boolean nullPlusNonNullEqualsNull;
+ private List<String> numericFunctions;
+ private List<OrderBySupport> orderBySupport;
+ private List<OuterJoinSupport> outerJoinSupport;
+ private IdentifierCasing quotedIdentifierCasing;
+ private Boolean readOnly;
+ private String schemaTerm;
+ private String searchEscapeString;
+ private Boolean selectForUpdateSupported;
+ private String specialCharacters;
+ private List<String> sqlKeywords;
+ private List<String> stringFunctions;
+ private List<SubQuerySupport> subquerySupport;
+ private List<String> systemFunctions;
+ private String tableTerm;
+ private Boolean transactionSupported;
+ private List<UnionSupport> unionSupport;
+
+ public ServerMeta()
+ {
+
+ }
+
+ // getters and setters
+
+ // allTablesSelectable
+
+ public Boolean getAllTablesSelectable()
+ {
+ return allTablesSelectable;
+ }
+
+ public ServerMeta setAllTablesSelectable(Boolean allTablesSelectable)
+ {
+ this.allTablesSelectable = allTablesSelectable;
+ return this;
+ }
+
+ // blobIncludedInMaxRowSize
+
+ public Boolean getBlobIncludedInMaxRowSize()
+ {
+ return blobIncludedInMaxRowSize;
+ }
+
+ public ServerMeta setBlobIncludedInMaxRowSize(Boolean blobIncludedInMaxRowSize)
+ {
+ this.blobIncludedInMaxRowSize = blobIncludedInMaxRowSize;
+ return this;
+ }
+
+ // catalogAtStart
+
+ public Boolean getCatalogAtStart()
+ {
+ return catalogAtStart;
+ }
+
+ public ServerMeta setCatalogAtStart(Boolean catalogAtStart)
+ {
+ this.catalogAtStart = catalogAtStart;
+ return this;
+ }
+
+ // catalogSeparator
+
+ public String getCatalogSeparator()
+ {
+ return catalogSeparator;
+ }
+
+ public ServerMeta setCatalogSeparator(String catalogSeparator)
+ {
+ this.catalogSeparator = catalogSeparator;
+ return this;
+ }
+
+ // catalogTerm
+
+ public String getCatalogTerm()
+ {
+ return catalogTerm;
+ }
+
+ public ServerMeta setCatalogTerm(String catalogTerm)
+ {
+ this.catalogTerm = catalogTerm;
+ return this;
+ }
+
+ // collateSupport
+
+ public List<CollateSupport> getCollateSupportList()
+ {
+ return collateSupport;
+ }
+
+ public ServerMeta setCollateSupportList(List<CollateSupport> collateSupport)
+ {
+ this.collateSupport = collateSupport;
+ return this;
+ }
+
+ // columnAliasingSupported
+
+ public Boolean getColumnAliasingSupported()
+ {
+ return columnAliasingSupported;
+ }
+
+ public ServerMeta setColumnAliasingSupported(Boolean columnAliasingSupported)
+ {
+ this.columnAliasingSupported = columnAliasingSupported;
+ return this;
+ }
+
+ // convertSupport
+
+ public List<ConvertSupport> getConvertSupportList()
+ {
+ return convertSupport;
+ }
+
+ public ServerMeta setConvertSupportList(List<ConvertSupport> convertSupport)
+ {
+ this.convertSupport = convertSupport;
+ return this;
+ }
+
+ // correlationNamesSupport
+
+ public CorrelationNamesSupport getCorrelationNamesSupport()
+ {
+ return correlationNamesSupport == null ? CorrelationNamesSupport.CN_NONE : correlationNamesSupport;
+ }
+
+ public ServerMeta setCorrelationNamesSupport(CorrelationNamesSupport correlationNamesSupport)
+ {
+ this.correlationNamesSupport = correlationNamesSupport;
+ return this;
+ }
+
+ // dateTimeFunctions
+
+ public List<String> getDateTimeFunctionsList()
+ {
+ return dateTimeFunctions;
+ }
+
+ public ServerMeta setDateTimeFunctionsList(List<String> dateTimeFunctions)
+ {
+ this.dateTimeFunctions = dateTimeFunctions;
+ return this;
+ }
+
+ // dateTimeLiteralsSupport
+
+ public List<DateTimeLiteralsSupport> getDateTimeLiteralsSupportList()
+ {
+ return dateTimeLiteralsSupport;
+ }
+
+ public ServerMeta setDateTimeLiteralsSupportList(List<DateTimeLiteralsSupport> dateTimeLiteralsSupport)
+ {
+ this.dateTimeLiteralsSupport = dateTimeLiteralsSupport;
+ return this;
+ }
+
+ // groupBySupport
+
+ public GroupBySupport getGroupBySupport()
+ {
+ return groupBySupport == null ? GroupBySupport.GB_NONE : groupBySupport;
+ }
+
+ public ServerMeta setGroupBySupport(GroupBySupport groupBySupport)
+ {
+ this.groupBySupport = groupBySupport;
+ return this;
+ }
+
+ // identifierCasing
+
+ public IdentifierCasing getIdentifierCasing()
+ {
+ return identifierCasing == null ? IdentifierCasing.IC_UNKNOWN : identifierCasing;
+ }
+
+ public ServerMeta setIdentifierCasing(IdentifierCasing identifierCasing)
+ {
+ this.identifierCasing = identifierCasing;
+ return this;
+ }
+
+ // identifierQuoteString
+
+ public String getIdentifierQuoteString()
+ {
+ return identifierQuoteString;
+ }
+
+ public ServerMeta setIdentifierQuoteString(String identifierQuoteString)
+ {
+ this.identifierQuoteString = identifierQuoteString;
+ return this;
+ }
+
+ // likeEscapeClauseSupported
+
+ public Boolean getLikeEscapeClauseSupported()
+ {
+ return likeEscapeClauseSupported;
+ }
+
+ public ServerMeta setLikeEscapeClauseSupported(Boolean likeEscapeClauseSupported)
+ {
+ this.likeEscapeClauseSupported = likeEscapeClauseSupported;
+ return this;
+ }
+
+ // maxBinaryLiteralLength
+
+ public int getMaxBinaryLiteralLength()
+ {
+ return maxBinaryLiteralLength;
+ }
+
+ public ServerMeta setMaxBinaryLiteralLength(int maxBinaryLiteralLength)
+ {
+ this.maxBinaryLiteralLength = maxBinaryLiteralLength;
+ return this;
+ }
+
+ // maxCatalogNameLength
+
+ public int getMaxCatalogNameLength()
+ {
+ return maxCatalogNameLength;
+ }
+
+ public ServerMeta setMaxCatalogNameLength(int maxCatalogNameLength)
+ {
+ this.maxCatalogNameLength = maxCatalogNameLength;
+ return this;
+ }
+
+ // maxCharLiteralLength
+
+ public int getMaxCharLiteralLength()
+ {
+ return maxCharLiteralLength;
+ }
+
+ public ServerMeta setMaxCharLiteralLength(int maxCharLiteralLength)
+ {
+ this.maxCharLiteralLength = maxCharLiteralLength;
+ return this;
+ }
+
+ // maxColumnNameLength
+
+ public int getMaxColumnNameLength()
+ {
+ return maxColumnNameLength;
+ }
+
+ public ServerMeta setMaxColumnNameLength(int maxColumnNameLength)
+ {
+ this.maxColumnNameLength = maxColumnNameLength;
+ return this;
+ }
+
+ // maxColumnsInGroupBy
+
+ public int getMaxColumnsInGroupBy()
+ {
+ return maxColumnsInGroupBy;
+ }
+
+ public ServerMeta setMaxColumnsInGroupBy(int maxColumnsInGroupBy)
+ {
+ this.maxColumnsInGroupBy = maxColumnsInGroupBy;
+ return this;
+ }
+
+ // maxColumnsInOrderBy
+
+ public int getMaxColumnsInOrderBy()
+ {
+ return maxColumnsInOrderBy;
+ }
+
+ public ServerMeta setMaxColumnsInOrderBy(int maxColumnsInOrderBy)
+ {
+ this.maxColumnsInOrderBy = maxColumnsInOrderBy;
+ return this;
+ }
+
+ // maxColumnsInSelect
+
+ public int getMaxColumnsInSelect()
+ {
+ return maxColumnsInSelect;
+ }
+
+ public ServerMeta setMaxColumnsInSelect(int maxColumnsInSelect)
+ {
+ this.maxColumnsInSelect = maxColumnsInSelect;
+ return this;
+ }
+
+ // maxCursorNameLength
+
+ public int getMaxCursorNameLength()
+ {
+ return maxCursorNameLength;
+ }
+
+ public ServerMeta setMaxCursorNameLength(int maxCursorNameLength)
+ {
+ this.maxCursorNameLength = maxCursorNameLength;
+ return this;
+ }
+
+ // maxLogicalLobSize
+
+ public int getMaxLogicalLobSize()
+ {
+ return maxLogicalLobSize;
+ }
+
+ public ServerMeta setMaxLogicalLobSize(int maxLogicalLobSize)
+ {
+ this.maxLogicalLobSize = maxLogicalLobSize;
+ return this;
+ }
+
+ // maxRowSize
+
+ public int getMaxRowSize()
+ {
+ return maxRowSize;
+ }
+
+ public ServerMeta setMaxRowSize(int maxRowSize)
+ {
+ this.maxRowSize = maxRowSize;
+ return this;
+ }
+
+ // maxSchemaNameLength
+
+ public int getMaxSchemaNameLength()
+ {
+ return maxSchemaNameLength;
+ }
+
+ public ServerMeta setMaxSchemaNameLength(int maxSchemaNameLength)
+ {
+ this.maxSchemaNameLength = maxSchemaNameLength;
+ return this;
+ }
+
+ // maxStatementLength
+
+ public int getMaxStatementLength()
+ {
+ return maxStatementLength;
+ }
+
+ public ServerMeta setMaxStatementLength(int maxStatementLength)
+ {
+ this.maxStatementLength = maxStatementLength;
+ return this;
+ }
+
+ // maxStatements
+
+ public int getMaxStatements()
+ {
+ return maxStatements;
+ }
+
+ public ServerMeta setMaxStatements(int maxStatements)
+ {
+ this.maxStatements = maxStatements;
+ return this;
+ }
+
+ // maxTableNameLength
+
+ public int getMaxTableNameLength()
+ {
+ return maxTableNameLength;
+ }
+
+ public ServerMeta setMaxTableNameLength(int maxTableNameLength)
+ {
+ this.maxTableNameLength = maxTableNameLength;
+ return this;
+ }
+
+ // maxTablesInSelect
+
+ public int getMaxTablesInSelect()
+ {
+ return maxTablesInSelect;
+ }
+
+ public ServerMeta setMaxTablesInSelect(int maxTablesInSelect)
+ {
+ this.maxTablesInSelect = maxTablesInSelect;
+ return this;
+ }
+
+ // maxUserNameLength
+
+ public int getMaxUserNameLength()
+ {
+ return maxUserNameLength;
+ }
+
+ public ServerMeta setMaxUserNameLength(int maxUserNameLength)
+ {
+ this.maxUserNameLength = maxUserNameLength;
+ return this;
+ }
+
+ // nullCollation
+
+ public NullCollation getNullCollation()
+ {
+ return nullCollation == null ? NullCollation.NC_UNKNOWN : nullCollation;
+ }
+
+ public ServerMeta setNullCollation(NullCollation nullCollation)
+ {
+ this.nullCollation = nullCollation;
+ return this;
+ }
+
+ // nullPlusNonNullEqualsNull
+
+ public Boolean getNullPlusNonNullEqualsNull()
+ {
+ return nullPlusNonNullEqualsNull;
+ }
+
+ public ServerMeta setNullPlusNonNullEqualsNull(Boolean nullPlusNonNullEqualsNull)
+ {
+ this.nullPlusNonNullEqualsNull = nullPlusNonNullEqualsNull;
+ return this;
+ }
+
+ // numericFunctions
+
+ public List<String> getNumericFunctionsList()
+ {
+ return numericFunctions;
+ }
+
+ public ServerMeta setNumericFunctionsList(List<String> numericFunctions)
+ {
+ this.numericFunctions = numericFunctions;
+ return this;
+ }
+
+ // orderBySupport
+
+ public List<OrderBySupport> getOrderBySupportList()
+ {
+ return orderBySupport;
+ }
+
+ public ServerMeta setOrderBySupportList(List<OrderBySupport> orderBySupport)
+ {
+ this.orderBySupport = orderBySupport;
+ return this;
+ }
+
+ // outerJoinSupport
+
+ public List<OuterJoinSupport> getOuterJoinSupportList()
+ {
+ return outerJoinSupport;
+ }
+
+ public ServerMeta setOuterJoinSupportList(List<OuterJoinSupport> outerJoinSupport)
+ {
+ this.outerJoinSupport = outerJoinSupport;
+ return this;
+ }
+
+ // quotedIdentifierCasing
+
+ public IdentifierCasing getQuotedIdentifierCasing()
+ {
+ return quotedIdentifierCasing == null ? IdentifierCasing.IC_UNKNOWN : quotedIdentifierCasing;
+ }
+
+ public ServerMeta setQuotedIdentifierCasing(IdentifierCasing quotedIdentifierCasing)
+ {
+ this.quotedIdentifierCasing = quotedIdentifierCasing;
+ return this;
+ }
+
+ // readOnly
+
+ public Boolean getReadOnly()
+ {
+ return readOnly;
+ }
+
+ public ServerMeta setReadOnly(Boolean readOnly)
+ {
+ this.readOnly = readOnly;
+ return this;
+ }
+
+ // schemaTerm
+
+ public String getSchemaTerm()
+ {
+ return schemaTerm;
+ }
+
+ public ServerMeta setSchemaTerm(String schemaTerm)
+ {
+ this.schemaTerm = schemaTerm;
+ return this;
+ }
+
+ // searchEscapeString
+
+ public String getSearchEscapeString()
+ {
+ return searchEscapeString;
+ }
+
+ public ServerMeta setSearchEscapeString(String searchEscapeString)
+ {
+ this.searchEscapeString = searchEscapeString;
+ return this;
+ }
+
+ // selectForUpdateSupported
+
+ public Boolean getSelectForUpdateSupported()
+ {
+ return selectForUpdateSupported;
+ }
+
+ public ServerMeta setSelectForUpdateSupported(Boolean selectForUpdateSupported)
+ {
+ this.selectForUpdateSupported = selectForUpdateSupported;
+ return this;
+ }
+
+ // specialCharacters
+
+ public String getSpecialCharacters()
+ {
+ return specialCharacters;
+ }
+
+ public ServerMeta setSpecialCharacters(String specialCharacters)
+ {
+ this.specialCharacters = specialCharacters;
+ return this;
+ }
+
+ // sqlKeywords
+
+ public List<String> getSqlKeywordsList()
+ {
+ return sqlKeywords;
+ }
+
+ public ServerMeta setSqlKeywordsList(List<String> sqlKeywords)
+ {
+ this.sqlKeywords = sqlKeywords;
+ return this;
+ }
+
+ // stringFunctions
+
+ public List<String> getStringFunctionsList()
+ {
+ return stringFunctions;
+ }
+
+ public ServerMeta setStringFunctionsList(List<String> stringFunctions)
+ {
+ this.stringFunctions = stringFunctions;
+ return this;
+ }
+
+ // subquerySupport
+
+ public List<SubQuerySupport> getSubquerySupportList()
+ {
+ return subquerySupport;
+ }
+
+ public ServerMeta setSubquerySupportList(List<SubQuerySupport> subquerySupport)
+ {
+ this.subquerySupport = subquerySupport;
+ return this;
+ }
+
+ // systemFunctions
+
+ public List<String> getSystemFunctionsList()
+ {
+ return systemFunctions;
+ }
+
+ public ServerMeta setSystemFunctionsList(List<String> systemFunctions)
+ {
+ this.systemFunctions = systemFunctions;
+ return this;
+ }
+
+ // tableTerm
+
+ public String getTableTerm()
+ {
+ return tableTerm;
+ }
+
+ public ServerMeta setTableTerm(String tableTerm)
+ {
+ this.tableTerm = tableTerm;
+ return this;
+ }
+
+ // transactionSupported
+
+ public Boolean getTransactionSupported()
+ {
+ return transactionSupported;
+ }
+
+ public ServerMeta setTransactionSupported(Boolean transactionSupported)
+ {
+ this.transactionSupported = transactionSupported;
+ return this;
+ }
+
+ // unionSupport
+
+ public List<UnionSupport> getUnionSupportList()
+ {
+ return unionSupport;
+ }
+
+ public ServerMeta setUnionSupportList(List<UnionSupport> unionSupport)
+ {
+ this.unionSupport = unionSupport;
+ return this;
+ }
+
+ // java serialization
+
+ public void readExternal(ObjectInput in) throws IOException
+ {
+ GraphIOUtil.mergeDelimitedFrom(in, this, this);
+ }
+
+ public void writeExternal(ObjectOutput out) throws IOException
+ {
+ GraphIOUtil.writeDelimitedTo(out, this, this);
+ }
+
+ // message method
+
+ public Schema<ServerMeta> cachedSchema()
+ {
+ return DEFAULT_INSTANCE;
+ }
+
+ // schema methods
+
+ public ServerMeta newMessage()
+ {
+ return new ServerMeta();
+ }
+
+ public Class<ServerMeta> typeClass()
+ {
+ return ServerMeta.class;
+ }
+
+ public String messageName()
+ {
+ return ServerMeta.class.getSimpleName();
+ }
+
+ public String messageFullName()
+ {
+ return ServerMeta.class.getName();
+ }
+
+ public boolean isInitialized(ServerMeta message)
+ {
+ return true;
+ }
+
+ public void mergeFrom(Input input, ServerMeta message) throws IOException
+ {
+ for(int number = input.readFieldNumber(this);; number = input.readFieldNumber(this))
+ {
+ switch(number)
+ {
+ case 0:
+ return;
+ case 1:
+ message.allTablesSelectable = input.readBool();
+ break;
+ case 2:
+ message.blobIncludedInMaxRowSize = input.readBool();
+ break;
+ case 3:
+ message.catalogAtStart = input.readBool();
+ break;
+ case 4:
+ message.catalogSeparator = input.readString();
+ break;
+ case 5:
+ message.catalogTerm = input.readString();
+ break;
+ case 6:
+ if(message.collateSupport == null)
+ message.collateSupport = new ArrayList<CollateSupport>();
+ message.collateSupport.add(CollateSupport.valueOf(input.readEnum()));
+ break;
+ case 7:
+ message.columnAliasingSupported = input.readBool();
+ break;
+ case 8:
+ if(message.convertSupport == null)
+ message.convertSupport = new ArrayList<ConvertSupport>();
+ message.convertSupport.add(input.mergeObject(null, ConvertSupport.getSchema()));
+ break;
+
+ case 9:
+ message.correlationNamesSupport = CorrelationNamesSupport.valueOf(input.readEnum());
+ break;
+ case 10:
+ if(message.dateTimeFunctions == null)
+ message.dateTimeFunctions = new ArrayList<String>();
+ message.dateTimeFunctions.add(input.readString());
+ break;
+ case 11:
+ if(message.dateTimeLiteralsSupport == null)
+ message.dateTimeLiteralsSupport = new ArrayList<DateTimeLiteralsSupport>();
+ message.dateTimeLiteralsSupport.add(DateTimeLiteralsSupport.valueOf(input.readEnum()));
+ break;
+ case 12:
+ message.groupBySupport = GroupBySupport.valueOf(input.readEnum());
+ break;
+ case 13:
+ message.identifierCasing = IdentifierCasing.valueOf(input.readEnum());
+ break;
+ case 14:
+ message.identifierQuoteString = input.readString();
+ break;
+ case 15:
+ message.likeEscapeClauseSupported = input.readBool();
+ break;
+ case 16:
+ message.maxBinaryLiteralLength = input.readUInt32();
+ break;
+ case 17:
+ message.maxCatalogNameLength = input.readUInt32();
+ break;
+ case 18:
+ message.maxCharLiteralLength = input.readUInt32();
+ break;
+ case 19:
+ message.maxColumnNameLength = input.readUInt32();
+ break;
+ case 20:
+ message.maxColumnsInGroupBy = input.readUInt32();
+ break;
+ case 21:
+ message.maxColumnsInOrderBy = input.readUInt32();
+ break;
+ case 22:
+ message.maxColumnsInSelect = input.readUInt32();
+ break;
+ case 23:
+ message.maxCursorNameLength = input.readUInt32();
+ break;
+ case 24:
+ message.maxLogicalLobSize = input.readUInt32();
+ break;
+ case 25:
+ message.maxRowSize = input.readUInt32();
+ break;
+ case 26:
+ message.maxSchemaNameLength = input.readUInt32();
+ break;
+ case 27:
+ message.maxStatementLength = input.readUInt32();
+ break;
+ case 28:
+ message.maxStatements = input.readUInt32();
+ break;
+ case 29:
+ message.maxTableNameLength = input.readUInt32();
+ break;
+ case 30:
+ message.maxTablesInSelect = input.readUInt32();
+ break;
+ case 31:
+ message.maxUserNameLength = input.readUInt32();
+ break;
+ case 32:
+ message.nullCollation = NullCollation.valueOf(input.readEnum());
+ break;
+ case 33:
+ message.nullPlusNonNullEqualsNull = input.readBool();
+ break;
+ case 34:
+ if(message.numericFunctions == null)
+ message.numericFunctions = new ArrayList<String>();
+ message.numericFunctions.add(input.readString());
+ break;
+ case 35:
+ if(message.orderBySupport == null)
+ message.orderBySupport = new ArrayList<OrderBySupport>();
+ message.orderBySupport.add(OrderBySupport.valueOf(input.readEnum()));
+ break;
+ case 36:
+ if(message.outerJoinSupport == null)
+ message.outerJoinSupport = new ArrayList<OuterJoinSupport>();
+ message.outerJoinSupport.add(OuterJoinSupport.valueOf(input.readEnum()));
+ break;
+ case 37:
+ message.quotedIdentifierCasing = IdentifierCasing.valueOf(input.readEnum());
+ break;
+ case 38:
+ message.readOnly = input.readBool();
+ break;
+ case 39:
+ message.schemaTerm = input.readString();
+ break;
+ case 40:
+ message.searchEscapeString = input.readString();
+ break;
+ case 41:
+ message.selectForUpdateSupported = input.readBool();
+ break;
+ case 42:
+ message.specialCharacters = input.readString();
+ break;
+ case 43:
+ if(message.sqlKeywords == null)
+ message.sqlKeywords = new ArrayList<String>();
+ message.sqlKeywords.add(input.readString());
+ break;
+ case 44:
+ if(message.stringFunctions == null)
+ message.stringFunctions = new ArrayList<String>();
+ message.stringFunctions.add(input.readString());
+ break;
+ case 45:
+ if(message.subquerySupport == null)
+ message.subquerySupport = new ArrayList<SubQuerySupport>();
+ message.subquerySupport.add(SubQuerySupport.valueOf(input.readEnum()));
+ break;
+ case 46:
+ if(message.systemFunctions == null)
+ message.systemFunctions = new ArrayList<String>();
+ message.systemFunctions.add(input.readString());
+ break;
+ case 47:
+ message.tableTerm = input.readString();
+ break;
+ case 48:
+ message.transactionSupported = input.readBool();
+ break;
+ case 49:
+ if(message.unionSupport == null)
+ message.unionSupport = new ArrayList<UnionSupport>();
+ message.unionSupport.add(UnionSupport.valueOf(input.readEnum()));
+ break;
+ default:
+ input.handleUnknownField(number, this);
+ }
+ }
+ }
+
+
+ public void writeTo(Output output, ServerMeta message) throws IOException
+ {
+ if(message.allTablesSelectable != null)
+ output.writeBool(1, message.allTablesSelectable, false);
+
+ if(message.blobIncludedInMaxRowSize != null)
+ output.writeBool(2, message.blobIncludedInMaxRowSize, false);
+
+ if(message.catalogAtStart != null)
+ output.writeBool(3, message.catalogAtStart, false);
+
+ if(message.catalogSeparator != null)
+ output.writeString(4, message.catalogSeparator, false);
+
+ if(message.catalogTerm != null)
+ output.writeString(5, message.catalogTerm, false);
+
+ if(message.collateSupport != null)
+ {
+ for(CollateSupport collateSupport : message.collateSupport)
+ {
+ if(collateSupport != null)
+ output.writeEnum(6, collateSupport.number, true);
+ }
+ }
+
+ if(message.columnAliasingSupported != null)
+ output.writeBool(7, message.columnAliasingSupported, false);
+
+ if(message.convertSupport != null)
+ {
+ for(ConvertSupport convertSupport : message.convertSupport)
+ {
+ if(convertSupport != null)
+ output.writeObject(8, convertSupport, ConvertSupport.getSchema(), true);
+ }
+ }
+
+
+ if(message.correlationNamesSupport != null)
+ output.writeEnum(9, message.correlationNamesSupport.number, false);
+
+ if(message.dateTimeFunctions != null)
+ {
+ for(String dateTimeFunctions : message.dateTimeFunctions)
+ {
+ if(dateTimeFunctions != null)
+ output.writeString(10, dateTimeFunctions, true);
+ }
+ }
+
+ if(message.dateTimeLiteralsSupport != null)
+ {
+ for(DateTimeLiteralsSupport dateTimeLiteralsSupport : message.dateTimeLiteralsSupport)
+ {
+ if(dateTimeLiteralsSupport != null)
+ output.writeEnum(11, dateTimeLiteralsSupport.number, true);
+ }
+ }
+
+ if(message.groupBySupport != null)
+ output.writeEnum(12, message.groupBySupport.number, false);
+
+ if(message.identifierCasing != null)
+ output.writeEnum(13, message.identifierCasing.number, false);
+
+ if(message.identifierQuoteString != null)
+ output.writeString(14, message.identifierQuoteString, false);
+
+ if(message.likeEscapeClauseSupported != null)
+ output.writeBool(15, message.likeEscapeClauseSupported, false);
+
+ if(message.maxBinaryLiteralLength != 0)
+ output.writeUInt32(16, message.maxBinaryLiteralLength, false);
+
+ if(message.maxCatalogNameLength != 0)
+ output.writeUInt32(17, message.maxCatalogNameLength, false);
+
+ if(message.maxCharLiteralLength != 0)
+ output.writeUInt32(18, message.maxCharLiteralLength, false);
+
+ if(message.maxColumnNameLength != 0)
+ output.writeUInt32(19, message.maxColumnNameLength, false);
+
+ if(message.maxColumnsInGroupBy != 0)
+ output.writeUInt32(20, message.maxColumnsInGroupBy, false);
+
+ if(message.maxColumnsInOrderBy != 0)
+ output.writeUInt32(21, message.maxColumnsInOrderBy, false);
+
+ if(message.maxColumnsInSelect != 0)
+ output.writeUInt32(22, message.maxColumnsInSelect, false);
+
+ if(message.maxCursorNameLength != 0)
+ output.writeUInt32(23, message.maxCursorNameLength, false);
+
+ if(message.maxLogicalLobSize != 0)
+ output.writeUInt32(24, message.maxLogicalLobSize, false);
+
+ if(message.maxRowSize != 0)
+ output.writeUInt32(25, message.maxRowSize, false);
+
+ if(message.maxSchemaNameLength != 0)
+ output.writeUInt32(26, message.maxSchemaNameLength, false);
+
+ if(message.maxStatementLength != 0)
+ output.writeUInt32(27, message.maxStatementLength, false);
+
+ if(message.maxStatements != 0)
+ output.writeUInt32(28, message.maxStatements, false);
+
+ if(message.maxTableNameLength != 0)
+ output.writeUInt32(29, message.maxTableNameLength, false);
+
+ if(message.maxTablesInSelect != 0)
+ output.writeUInt32(30, message.maxTablesInSelect, false);
+
+ if(message.maxUserNameLength != 0)
+ output.writeUInt32(31, message.maxUserNameLength, false);
+
+ if(message.nullCollation != null)
+ output.writeEnum(32, message.nullCollation.number, false);
+
+ if(message.nullPlusNonNullEqualsNull != null)
+ output.writeBool(33, message.nullPlusNonNullEqualsNull, false);
+
+ if(message.numericFunctions != null)
+ {
+ for(String numericFunctions : message.numericFunctions)
+ {
+ if(numericFunctions != null)
+ output.writeString(34, numericFunctions, true);
+ }
+ }
+
+ if(message.orderBySupport != null)
+ {
+ for(OrderBySupport orderBySupport : message.orderBySupport)
+ {
+ if(orderBySupport != null)
+ output.writeEnum(35, orderBySupport.number, true);
+ }
+ }
+
+ if(message.outerJoinSupport != null)
+ {
+ for(OuterJoinSupport outerJoinSupport : message.outerJoinSupport)
+ {
+ if(outerJoinSupport != null)
+ output.writeEnum(36, outerJoinSupport.number, true);
+ }
+ }
+
+ if(message.quotedIdentifierCasing != null)
+ output.writeEnum(37, message.quotedIdentifierCasing.number, false);
+
+ if(message.readOnly != null)
+ output.writeBool(38, message.readOnly, false);
+
+ if(message.schemaTerm != null)
+ output.writeString(39, message.schemaTerm, false);
+
+ if(message.searchEscapeString != null)
+ output.writeString(40, message.searchEscapeString, false);
+
+ if(message.selectForUpdateSupported != null)
+ output.writeBool(41, message.selectForUpdateSupported, false);
+
+ if(message.specialCharacters != null)
+ output.writeString(42, message.specialCharacters, false);
+
+ if(message.sqlKeywords != null)
+ {
+ for(String sqlKeywords : message.sqlKeywords)
+ {
+ if(sqlKeywords != null)
+ output.writeString(43, sqlKeywords, true);
+ }
+ }
+
+ if(message.stringFunctions != null)
+ {
+ for(String stringFunctions : message.stringFunctions)
+ {
+ if(stringFunctions != null)
+ output.writeString(44, stringFunctions, true);
+ }
+ }
+
+ if(message.subquerySupport != null)
+ {
+ for(SubQuerySupport subquerySupport : message.subquerySupport)
+ {
+ if(subquerySupport != null)
+ output.writeEnum(45, subquerySupport.number, true);
+ }
+ }
+
+ if(message.systemFunctions != null)
+ {
+ for(String systemFunctions : message.systemFunctions)
+ {
+ if(systemFunctions != null)
+ output.writeString(46, systemFunctions, true);
+ }
+ }
+
+ if(message.tableTerm != null)
+ output.writeString(47, message.tableTerm, false);
+
+ if(message.transactionSupported != null)
+ output.writeBool(48, message.transactionSupported, false);
+
+ if(message.unionSupport != null)
+ {
+ for(UnionSupport unionSupport : message.unionSupport)
+ {
+ if(unionSupport != null)
+ output.writeEnum(49, unionSupport.number, true);
+ }
+ }
+ }
+
+ public String getFieldName(int number)
+ {
+ switch(number)
+ {
+ case 1: return "allTablesSelectable";
+ case 2: return "blobIncludedInMaxRowSize";
+ case 3: return "catalogAtStart";
+ case 4: return "catalogSeparator";
+ case 5: return "catalogTerm";
+ case 6: return "collateSupport";
+ case 7: return "columnAliasingSupported";
+ case 8: return "convertSupport";
+ case 9: return "correlationNamesSupport";
+ case 10: return "dateTimeFunctions";
+ case 11: return "dateTimeLiteralsSupport";
+ case 12: return "groupBySupport";
+ case 13: return "identifierCasing";
+ case 14: return "identifierQuoteString";
+ case 15: return "likeEscapeClauseSupported";
+ case 16: return "maxBinaryLiteralLength";
+ case 17: return "maxCatalogNameLength";
+ case 18: return "maxCharLiteralLength";
+ case 19: return "maxColumnNameLength";
+ case 20: return "maxColumnsInGroupBy";
+ case 21: return "maxColumnsInOrderBy";
+ case 22: return "maxColumnsInSelect";
+ case 23: return "maxCursorNameLength";
+ case 24: return "maxLogicalLobSize";
+ case 25: return "maxRowSize";
+ case 26: return "maxSchemaNameLength";
+ case 27: return "maxStatementLength";
+ case 28: return "maxStatements";
+ case 29: return "maxTableNameLength";
+ case 30: return "maxTablesInSelect";
+ case 31: return "maxUserNameLength";
+ case 32: return "nullCollation";
+ case 33: return "nullPlusNonNullEqualsNull";
+ case 34: return "numericFunctions";
+ case 35: return "orderBySupport";
+ case 36: return "outerJoinSupport";
+ case 37: return "quotedIdentifierCasing";
+ case 38: return "readOnly";
+ case 39: return "schemaTerm";
+ case 40: return "searchEscapeString";
+ case 41: return "selectForUpdateSupported";
+ case 42: return "specialCharacters";
+ case 43: return "sqlKeywords";
+ case 44: return "stringFunctions";
+ case 45: return "subquerySupport";
+ case 46: return "systemFunctions";
+ case 47: return "tableTerm";
+ case 48: return "transactionSupported";
+ case 49: return "unionSupport";
+ default: return null;
+ }
+ }
+
+ public int getFieldNumber(String name)
+ {
+ final Integer number = __fieldMap.get(name);
+ return number == null ? 0 : number.intValue();
+ }
+
+ private static final java.util.HashMap<String,Integer> __fieldMap = new java.util.HashMap<String,Integer>();
+ static
+ {
+ __fieldMap.put("allTablesSelectable", 1);
+ __fieldMap.put("blobIncludedInMaxRowSize", 2);
+ __fieldMap.put("catalogAtStart", 3);
+ __fieldMap.put("catalogSeparator", 4);
+ __fieldMap.put("catalogTerm", 5);
+ __fieldMap.put("collateSupport", 6);
+ __fieldMap.put("columnAliasingSupported", 7);
+ __fieldMap.put("convertSupport", 8);
+ __fieldMap.put("correlationNamesSupport", 9);
+ __fieldMap.put("dateTimeFunctions", 10);
+ __fieldMap.put("dateTimeLiteralsSupport", 11);
+ __fieldMap.put("groupBySupport", 12);
+ __fieldMap.put("identifierCasing", 13);
+ __fieldMap.put("identifierQuoteString", 14);
+ __fieldMap.put("likeEscapeClauseSupported", 15);
+ __fieldMap.put("maxBinaryLiteralLength", 16);
+ __fieldMap.put("maxCatalogNameLength", 17);
+ __fieldMap.put("maxCharLiteralLength", 18);
+ __fieldMap.put("maxColumnNameLength", 19);
+ __fieldMap.put("maxColumnsInGroupBy", 20);
+ __fieldMap.put("maxColumnsInOrderBy", 21);
+ __fieldMap.put("maxColumnsInSelect", 22);
+ __fieldMap.put("maxCursorNameLength", 23);
+ __fieldMap.put("maxLogicalLobSize", 24);
+ __fieldMap.put("maxRowSize", 25);
+ __fieldMap.put("maxSchemaNameLength", 26);
+ __fieldMap.put("maxStatementLength", 27);
+ __fieldMap.put("maxStatements", 28);
+ __fieldMap.put("maxTableNameLength", 29);
+ __fieldMap.put("maxTablesInSelect", 30);
+ __fieldMap.put("maxUserNameLength", 31);
+ __fieldMap.put("nullCollation", 32);
+ __fieldMap.put("nullPlusNonNullEqualsNull", 33);
+ __fieldMap.put("numericFunctions", 34);
+ __fieldMap.put("orderBySupport", 35);
+ __fieldMap.put("outerJoinSupport", 36);
+ __fieldMap.put("quotedIdentifierCasing", 37);
+ __fieldMap.put("readOnly", 38);
+ __fieldMap.put("schemaTerm", 39);
+ __fieldMap.put("searchEscapeString", 40);
+ __fieldMap.put("selectForUpdateSupported", 41);
+ __fieldMap.put("specialCharacters", 42);
+ __fieldMap.put("sqlKeywords", 43);
+ __fieldMap.put("stringFunctions", 44);
+ __fieldMap.put("subquerySupport", 45);
+ __fieldMap.put("systemFunctions", 46);
+ __fieldMap.put("tableTerm", 47);
+ __fieldMap.put("transactionSupported", 48);
+ __fieldMap.put("unionSupport", 49);
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/drill/blob/d2e0f415/protocol/src/main/java/org/apache/drill/exec/proto/beans/SubQuerySupport.java
----------------------------------------------------------------------
diff --git a/protocol/src/main/java/org/apache/drill/exec/proto/beans/SubQuerySupport.java b/protocol/src/main/java/org/apache/drill/exec/proto/beans/SubQuerySupport.java
new file mode 100644
index 0000000..28d6ff5
--- /dev/null
+++ b/protocol/src/main/java/org/apache/drill/exec/proto/beans/SubQuerySupport.java
@@ -0,0 +1,57 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+// Generated by http://code.google.com/p/protostuff/ ... DO NOT EDIT!
+// Generated from protobuf
+
+package org.apache.drill.exec.proto.beans;
+
+public enum SubQuerySupport implements com.dyuproject.protostuff.EnumLite<SubQuerySupport>
+{
+ SQ_UNKNOWN(0),
+ SQ_CORRELATED(1),
+ SQ_IN_COMPARISON(2),
+ SQ_IN_EXISTS(3),
+ SQ_IN_INSERT(4),
+ SQ_IN_QUANTIFIED(5);
+
+ public final int number;
+
+ private SubQuerySupport (int number)
+ {
+ this.number = number;
+ }
+
+ public int getNumber()
+ {
+ return number;
+ }
+
+ public static SubQuerySupport valueOf(int number)
+ {
+ switch(number)
+ {
+ case 0: return SQ_UNKNOWN;
+ case 1: return SQ_CORRELATED;
+ case 2: return SQ_IN_COMPARISON;
+ case 3: return SQ_IN_EXISTS;
+ case 4: return SQ_IN_INSERT;
+ case 5: return SQ_IN_QUANTIFIED;
+ default: return null;
+ }
+ }
+}
http://git-wip-us.apache.org/repos/asf/drill/blob/d2e0f415/protocol/src/main/java/org/apache/drill/exec/proto/beans/UnionSupport.java
----------------------------------------------------------------------
diff --git a/protocol/src/main/java/org/apache/drill/exec/proto/beans/UnionSupport.java b/protocol/src/main/java/org/apache/drill/exec/proto/beans/UnionSupport.java
new file mode 100644
index 0000000..aaeec0d
--- /dev/null
+++ b/protocol/src/main/java/org/apache/drill/exec/proto/beans/UnionSupport.java
@@ -0,0 +1,51 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+// Generated by http://code.google.com/p/protostuff/ ... DO NOT EDIT!
+// Generated from protobuf
+
+package org.apache.drill.exec.proto.beans;
+
+public enum UnionSupport implements com.dyuproject.protostuff.EnumLite<UnionSupport>
+{
+ U_UNKNOWN(0),
+ U_UNION(1),
+ U_UNION_ALL(2);
+
+ public final int number;
+
+ private UnionSupport (int number)
+ {
+ this.number = number;
+ }
+
+ public int getNumber()
+ {
+ return number;
+ }
+
+ public static UnionSupport valueOf(int number)
+ {
+ switch(number)
+ {
+ case 0: return U_UNKNOWN;
+ case 1: return U_UNION;
+ case 2: return U_UNION_ALL;
+ default: return null;
+ }
+ }
+}