/**
* 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.dependencies;
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 static com.facebook.swift.codec.ThriftField.Requiredness.OPTIONAL;
@ThriftService("DependencySource")
public interface DependencySource {
/**
* Get an aggregate representation of all services paired with every service they call in to.
* This includes information on call counts and mean/stdDev/etc of call durations. The two arguments
* specify epoch time in microseconds. The end time is optional and defaults to one day after the
* start time.
*/
@ThriftMethod(value = "getDependencies",
exception = {
@ThriftException(type = DependenciesException.class, id = 1)
})
Dependencies getDependencies(
@ThriftField(value = 1, requiredness = OPTIONAL) Long startTime,
@ThriftField(value = 2, requiredness = OPTIONAL) Long endTime
) throws DependenciesException;
}