/**
* Copyright 2015 The OpenZipkin Authors
*
* 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.
*/
package io.zipkin.query;
import com.facebook.swift.codec.ThriftField;
import com.facebook.swift.service.ThriftException;
import com.facebook.swift.service.ThriftMethod;
import com.facebook.swift.service.ThriftService;
import io.zipkin.Trace;
import java.util.List;
import java.util.Set;
@ThriftService("ZipkinQuery")
public interface ZipkinQuery {
@ThriftMethod(value = "getTraces",
exception = {
@ThriftException(type = QueryException.class, id = 1)
}) List<Trace> getTraces(
@ThriftField(value = 1) QueryRequest request
) throws QueryException;
@ThriftMethod(value = "getTracesByIds",
exception = {
@ThriftException(type = QueryException.class, id = 1)
}) List<Trace> getTracesByIds(
@ThriftField(value = 1) List<Long> traceIds,
@ThriftField(value = 3) boolean adjustClockSkew
) throws QueryException;
@ThriftMethod(value = "getServiceNames",
exception = {
@ThriftException(type = QueryException.class, id = 1)
}) Set<String> getServiceNames() throws QueryException;
@ThriftMethod(value = "getSpanNames",
exception = {
@ThriftException(type = QueryException.class, id = 1)
}) Set<String> getSpanNames(
@ThriftField(value = 1) String serviceName
) throws QueryException;
}