mirror of
https://github.com/apache/impala.git
synced 2026-01-04 09:00:56 -05:00
Adds the thrift structures for the public external data source API and a new maven project containing the Java ExternalDataSource interface and the generated Java thrift classes. The ExternalDataSource.thrift structures can evolve in a backward compatible way. The ExternalDataSource Java interface will always contain a version number in the namespace (e.g. com.cloudera.impala.extdatasource.v1 for V1) so we can potentially make breaking changes to the interface in the future but still support older versions. A trivial implementation of the ExternalDataSource API is also added for testing purposes. TODO: Make the sample data source implementation realistic. Change-Id: I827d6420a87ed7a2bce34e050362ca98ddc5dbcc Reviewed-on: http://gerrit.ent.cloudera.com:8080/2241 Reviewed-by: Matthew Jacobs <mj@cloudera.com> Tested-by: jenkins (cherry picked from commit f29814e9ede9d4c889f2648606fcf511feeb47ae) Reviewed-on: http://gerrit.ent.cloudera.com:8080/2313
101 lines
2.8 KiB
CMake
101 lines
2.8 KiB
CMake
# Copyright 2012 Cloudera Inc.
|
|
#
|
|
# Licensed 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.
|
|
|
|
|
|
# where to put generated libraries
|
|
set(LIBRARY_OUTPUT_PATH "${BUILD_OUTPUT_ROOT_DIRECTORY}/thrift")
|
|
|
|
# where to put generated binaries
|
|
set(EXECUTABLE_OUTPUT_PATH "${BUILD_OUTPUT_ROOT_DIRECTORY}/thrift")
|
|
|
|
set(SRC_FILES
|
|
CatalogObjects_constants.cpp
|
|
CatalogObjects_types.cpp
|
|
CatalogService.cpp
|
|
CatalogService_constants.cpp
|
|
CatalogService_types.cpp
|
|
CatalogInternalService_constants.cpp
|
|
CatalogInternalService_types.cpp
|
|
ImpalaInternalService.cpp
|
|
ImpalaInternalService_constants.cpp
|
|
ImpalaInternalService_types.cpp
|
|
ImpalaService.cpp
|
|
ImpalaService_constants.cpp
|
|
ImpalaService_types.cpp
|
|
ImpalaHiveServer2Service.cpp
|
|
Llama_constants.cpp
|
|
Llama_types.cpp
|
|
LlamaAMService.cpp
|
|
LlamaNotificationService.cpp
|
|
beeswax_constants.cpp
|
|
beeswax_types.cpp
|
|
BeeswaxService.cpp
|
|
TCLIService.cpp
|
|
cli_service_constants.cpp
|
|
cli_service_types.cpp
|
|
Data_constants.cpp
|
|
Data_types.cpp
|
|
DataSinks_constants.cpp
|
|
DataSinks_types.cpp
|
|
Descriptors_constants.cpp
|
|
Descriptors_types.cpp
|
|
Exprs_constants.cpp
|
|
Exprs_types.cpp
|
|
ExternalDataSource_constants.cpp
|
|
ExternalDataSource_types.cpp
|
|
Frontend_types.cpp
|
|
Frontend_constants.cpp
|
|
hive_metastore_constants.cpp
|
|
hive_metastore_types.cpp
|
|
JniCatalog_constants.cpp
|
|
JniCatalog_types.cpp
|
|
Logging_types.cpp
|
|
NetworkTest_constants.cpp
|
|
NetworkTest_types.cpp
|
|
NetworkTestService.cpp
|
|
PlanNodes_constants.cpp
|
|
PlanNodes_types.cpp
|
|
ResourceBrokerNotificationService.cpp
|
|
ResourceBrokerService_constants.cpp
|
|
ResourceBrokerService_types.cpp
|
|
ResourceBrokerService.cpp
|
|
Partitions_constants.cpp
|
|
Partitions_types.cpp
|
|
Planner_constants.cpp
|
|
Planner_types.cpp
|
|
parquet_constants.cpp
|
|
parquet_types.cpp
|
|
RuntimeProfile_constants.cpp
|
|
RuntimeProfile_types.cpp
|
|
StatestoreService.cpp
|
|
StatestoreService_constants.cpp
|
|
StatestoreService_types.cpp
|
|
StatestoreSubscriber.cpp
|
|
Status_constants.cpp
|
|
Status_types.cpp
|
|
Types_constants.cpp
|
|
Types_types.cpp
|
|
)
|
|
|
|
# keep everything in one library, the object files reference
|
|
# each other
|
|
add_library(ImpalaThrift STATIC ${SRC_FILES})
|
|
|
|
# Setting these files as code-generated lets make clean and incremental builds work
|
|
# correctly
|
|
set_source_files_properties(${SRC_FILES} PROPERTIES GENERATED TRUE)
|
|
|
|
add_dependencies(ImpalaThrift thrift-cpp)
|
|
|