// Copyright 2018 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

library fuchsia.sys;

// An interface for providing a job handle. Instances of this interface are
// created in the context of an already-identified realm, so there is no need
// to explicitly identify the realm below.
[Discoverable]
interface JobProvider {
  // Gets the root job associated with the realm.
  1: GetJob() -> (handle<job> job);
};
