/* * Copyright 2019 The Eggroll Authors. All Rights Reserved. * * 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. */ syntax = "proto3"; package com.webank.ai.eggroll.api.core; // network endpoint message Endpoint { string ip = 1; // ip address int32 port = 2; // port string hostname = 3; // host name } message Endpoints { repeated Endpoint endpoints = 1; } // general container for serialized data message Data { bool isNull = 1; // whether the data is actually 'null' (e.g. null in Java, None in python, NULL in c/c++ string hostLanguage = 2; // the host language which serializes it string type = 3; // data type in host language bytes data = 4; // actual data serialized in bytes } // general container for data list message RepeatedData { repeated Data datalist = 1; // list of data } // general message for a call request message CallRequest { bool isAsync = 1; // whether the call is async. ignored in phase 1 int64 timeout = 2; // in ms string command = 3; // call command. ignored in phase 1 Data param = 4; // call input param } // general message for a call response // todo: merge call response with Return Status message CallResponse { ReturnStatus returnStatus = 1; // return status Data result = 2; // call result } message Job { string jobId = 1; string name = 2; } message Task { Job job = 1; int64 taskId = 2; int64 tableId = 3; } // reserved for driver async call result message Result { Task task = 1; int64 resultId = 2; } // generic return status message ReturnStatus { int32 code = 1; string message = 2; } message SessionInfo { string sessionId = 1; map computingEngineConf = 2; string namingPolicy = 3; string tag = 4; }