blob: 120ad384423582aa9def7b229751e53efeb04ff9 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_40) on Thu Jul 20 13:18:23 PDT 2017 -->
<title>gobblin.runtime.api (gobblin-runtime 0.11.0 API)</title>
<meta name="date" content="2017-07-20">
<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="gobblin.runtime.api (gobblin-runtime 0.11.0 API)";
}
}
catch(err) {
}
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../overview-summary.html">Overview</a></li>
<li class="navBarCell1Rev">Package</li>
<li>Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../index-all.html">Index</a></li>
<li><a href="../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../gobblin/runtime/package-summary.html">Prev&nbsp;Package</a></li>
<li><a href="../../../gobblin/runtime/app/package-summary.html">Next&nbsp;Package</a></li>
</ul>
<ul class="navList">
<li><a href="../../../index.html?gobblin/runtime/api/package-summary.html" target="_top">Frames</a></li>
<li><a href="package-summary.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<a name="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<div class="header">
<h1 title="Package" class="title">Package&nbsp;gobblin.runtime.api</h1>
<div class="docSummary">
<div class="block">The Gobblin Execution Model.</div>
</div>
<p>See:&nbsp;<a href="#package.description">Description</a></p>
</div>
<div class="contentContainer">
<ul class="blockList">
<li class="blockList">
<table class="typeSummary" border="0" cellpadding="3" cellspacing="0" summary="Interface Summary table, listing interfaces, and an explanation">
<caption><span>Interface Summary</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Interface</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/Configurable.html" title="interface in gobblin.runtime.api">Configurable</a></td>
<td class="colLast">
<div class="block">A generic interface for any class that can be configured using a <a href="http://typesafehub.github.io/config/latest/api/com/typesafe/config/Config.html?is-external=true" title="class or interface in com.typesafe.config"><code>Config</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/EventMetadataGenerator.html" title="interface in gobblin.runtime.api">EventMetadataGenerator</a></td>
<td class="colLast">
<div class="block">For generating additional event metadata to associate with an event.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/GobblinInstanceDriver.html" title="interface in gobblin.runtime.api">GobblinInstanceDriver</a></td>
<td class="colLast">
<div class="block">An interface that defines a Gobblin Instance driver which knows how to monitor for Gobblin
<a href="../../../gobblin/runtime/api/JobSpec.html" title="class in gobblin.runtime.api"><code>JobSpec</code></a>s and run them.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/GobblinInstanceEnvironment.html" title="interface in gobblin.runtime.api">GobblinInstanceEnvironment</a></td>
<td class="colLast">
<div class="block">Defines Gobblin a set of standard configuration features for a gobblin instance.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/GobblinInstanceLauncher.html" title="interface in gobblin.runtime.api">GobblinInstanceLauncher</a></td>
<td class="colLast">
<div class="block">Main class instantiated by the JVM or running framework.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/GobblinInstancePlugin.html" title="interface in gobblin.runtime.api">GobblinInstancePlugin</a></td>
<td class="colLast">
<div class="block">The interfaces for Gobblin instance plugins.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/GobblinInstancePluginFactory.html" title="interface in gobblin.runtime.api">GobblinInstancePluginFactory</a></td>
<td class="colLast">
<div class="block">Creates a <a href="../../../gobblin/runtime/api/GobblinInstancePlugin.html" title="interface in gobblin.runtime.api"><code>GobblinInstancePlugin</code></a> for a specific <a href="../../../gobblin/runtime/api/GobblinInstanceDriver.html" title="interface in gobblin.runtime.api"><code>GobblinInstanceDriver</code></a> .</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/JobCatalog.html" title="interface in gobblin.runtime.api">JobCatalog</a></td>
<td class="colLast">
<div class="block">A catalog of all the <a href="../../../gobblin/runtime/api/JobSpec.html" title="class in gobblin.runtime.api"><code>JobSpec</code></a>s a Gobblin instance is currently aware of.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/JobCatalogListener.html" title="interface in gobblin.runtime.api">JobCatalogListener</a></td>
<td class="colLast">
<div class="block">A listener for changes to the <a href="../../../gobblin/runtime/api/JobSpec.html" title="class in gobblin.runtime.api"><code>JobSpec</code></a>s of a <a href="../../../gobblin/runtime/api/JobCatalog.html" title="interface in gobblin.runtime.api"><code>JobCatalog</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/JobCatalogListenersContainer.html" title="interface in gobblin.runtime.api">JobCatalogListenersContainer</a></td>
<td class="colLast">
<div class="block">Manages a collection of <a href="../../../gobblin/runtime/api/JobCatalogListener.html" title="interface in gobblin.runtime.api"><code>JobCatalogListener</code></a>s .</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/JobCatalogWithTemplates.html" title="interface in gobblin.runtime.api">JobCatalogWithTemplates</a></td>
<td class="colLast">
<div class="block">A <a href="../../../gobblin/runtime/api/JobTemplate.html" title="interface in gobblin.runtime.api"><code>JobTemplate</code></a> that supports loading <a href="../../../gobblin/runtime/api/JobTemplate.html" title="interface in gobblin.runtime.api"><code>JobTemplate</code></a>s.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/JobExecution.html" title="interface in gobblin.runtime.api">JobExecution</a></td>
<td class="colLast">
<div class="block">Identifies a specific execution of a <a href="../../../gobblin/runtime/api/JobSpec.html" title="class in gobblin.runtime.api"><code>JobSpec</code></a></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/JobExecutionDriver.html" title="interface in gobblin.runtime.api">JobExecutionDriver</a></td>
<td class="colLast">
<div class="block">Defines an implementation which knows how to run a GobblinJob and keep track of the progress.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/JobExecutionLauncher.html" title="interface in gobblin.runtime.api">JobExecutionLauncher</a></td>
<td class="colLast">
<div class="block">A factory for <a href="../../../gobblin/runtime/api/JobExecutionDriver.html" title="interface in gobblin.runtime.api"><code>JobExecutionDriver</code></a>s.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/JobExecutionStateListener.html" title="interface in gobblin.runtime.api">JobExecutionStateListener</a></td>
<td class="colLast">
<div class="block">Notification for changes in the execution state</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/JobExecutionStateListenerContainer.html" title="interface in gobblin.runtime.api">JobExecutionStateListenerContainer</a></td>
<td class="colLast">
<div class="block">Defines an interface for managing a collection of s</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/JobExecutionStatus.html" title="interface in gobblin.runtime.api">JobExecutionStatus</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/JobLifecycleListener.html" title="interface in gobblin.runtime.api">JobLifecycleListener</a></td>
<td class="colLast">
<div class="block">A listener that can track the full lifecycle of a job: from the registering of the jobspec to
completion of any of the job executions.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/JobLifecycleListenersContainer.html" title="interface in gobblin.runtime.api">JobLifecycleListenersContainer</a></td>
<td class="colLast">
<div class="block">An interface for managing instances of <a href="../../../gobblin/runtime/api/JobLifecycleListener.html" title="interface in gobblin.runtime.api"><code>JobLifecycleListener</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/JobSpecMonitor.html" title="interface in gobblin.runtime.api">JobSpecMonitor</a></td>
<td class="colLast">
<div class="block">Discovers jobs to execute and generates JobSpecs for each one.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/JobSpecMonitorFactory.html" title="interface in gobblin.runtime.api">JobSpecMonitorFactory</a></td>
<td class="colLast">
<div class="block">A fact</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/JobSpecSchedule.html" title="interface in gobblin.runtime.api">JobSpecSchedule</a></td>
<td class="colLast">
<div class="block">The schedule for a job</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/JobSpecScheduler.html" title="interface in gobblin.runtime.api">JobSpecScheduler</a></td>
<td class="colLast">
<div class="block">Early alpha of the scheduler interface which is responsible of deciding when to run next the
GobblinJob identified by a JobSpec.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/JobSpecSchedulerListener.html" title="interface in gobblin.runtime.api">JobSpecSchedulerListener</a></td>
<td class="colLast">
<div class="block"><a href="../../../gobblin/runtime/api/JobSpecScheduler.html" title="interface in gobblin.runtime.api"><code>JobSpecScheduler</code></a> callbacks.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/JobSpecSchedulerListenersContainer.html" title="interface in gobblin.runtime.api">JobSpecSchedulerListenersContainer</a></td>
<td class="colLast">
<div class="block">Implemented by classes that can manage a collection of <a href="../../../gobblin/runtime/api/JobSpecSchedulerListener.html" title="interface in gobblin.runtime.api"><code>JobSpecSchedulerListener</code></a>
instances.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/JobTemplate.html" title="interface in gobblin.runtime.api">JobTemplate</a></td>
<td class="colLast">
<div class="block">An interface for claiming methods used for
retrieving template configs
and properties that are required by user to fit in.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/MutableJobCatalog.html" title="interface in gobblin.runtime.api">MutableJobCatalog</a></td>
<td class="colLast">
<div class="block">A <a href="../../../gobblin/runtime/api/JobCatalog.html" title="interface in gobblin.runtime.api"><code>JobCatalog</code></a> that can have its <code>Collection</code> of <a href="../../../gobblin/runtime/api/JobSpec.html" title="class in gobblin.runtime.api"><code>JobSpec</code></a>s modified
programmatically.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/MutableSpecCatalog.html" title="interface in gobblin.runtime.api">MutableSpecCatalog</a></td>
<td class="colLast">
<div class="block">A <a href="../../../gobblin/runtime/api/SpecCatalog.html" title="interface in gobblin.runtime.api"><code>SpecCatalog</code></a> that can have its <a href="https://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util"><code>Collection</code></a> of <a href="http://linkedin.github.io/gobblin/javadoc/0.11.0/gobblin-api/gobblin/runtime/api/Spec.html?is-external=true" title="class or interface in gobblin.runtime.api"><code>Spec</code></a>s modified
programmatically.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/SpecCatalog.html" title="interface in gobblin.runtime.api">SpecCatalog</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/SpecCatalogListener.html" title="interface in gobblin.runtime.api">SpecCatalogListener</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/SpecCatalogListenersContainer.html" title="interface in gobblin.runtime.api">SpecCatalogListenersContainer</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/SpecCompiler.html" title="interface in gobblin.runtime.api">SpecCompiler</a></td>
<td class="colLast">
<div class="block">Take in a logical <a href="http://linkedin.github.io/gobblin/javadoc/0.11.0/gobblin-api/gobblin/runtime/api/Spec.html?is-external=true" title="class or interface in gobblin.runtime.api"><code>Spec</code></a> and compile corresponding materialized <a href="http://linkedin.github.io/gobblin/javadoc/0.11.0/gobblin-api/gobblin/runtime/api/Spec.html?is-external=true" title="class or interface in gobblin.runtime.api"><code>Spec</code></a>s
and the mapping to <a href="http://linkedin.github.io/gobblin/javadoc/0.11.0/gobblin-api/gobblin/runtime/api/SpecExecutorInstance.html?is-external=true" title="class or interface in gobblin.runtime.api"><code>SpecExecutorInstance</code></a> that they can be run on.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/SpecSerDe.html" title="interface in gobblin.runtime.api">SpecSerDe</a></td>
<td class="colLast">
<div class="block">A Serializer / Deserializer for <a href="http://linkedin.github.io/gobblin/javadoc/0.11.0/gobblin-api/gobblin/runtime/api/Spec.html?is-external=true" title="class or interface in gobblin.runtime.api"><code>Spec</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/SpecStore.html" title="interface in gobblin.runtime.api">SpecStore</a></td>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList">
<table class="typeSummary" border="0" cellpadding="3" cellspacing="0" summary="Class Summary table, listing classes, and an explanation">
<caption><span>Class Summary</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Class</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/FlowSpec.html" title="class in gobblin.runtime.api">FlowSpec</a></td>
<td class="colLast">
<div class="block">Defines a Gobblin Flow (potentially collection of <a href="../../../gobblin/runtime/api/FlowSpec.html" title="class in gobblin.runtime.api"><code>FlowSpec</code></a>) that can be run once, or multiple times.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/FlowSpec.Builder.html" title="class in gobblin.runtime.api">FlowSpec.Builder</a></td>
<td class="colLast">
<div class="block">Builder for <a href="../../../gobblin/runtime/api/FlowSpec.html" title="class in gobblin.runtime.api"><code>FlowSpec</code></a>s.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/GobblinInstanceDriver.StandardMetrics.html" title="class in gobblin.runtime.api">GobblinInstanceDriver.StandardMetrics</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/GobblinInstanceLauncher.ConfigAccessor.html" title="class in gobblin.runtime.api">GobblinInstanceLauncher.ConfigAccessor</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/JobCatalog.StandardMetrics.html" title="class in gobblin.runtime.api">JobCatalog.StandardMetrics</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/JobCatalogListener.AddJobCallback.html" title="class in gobblin.runtime.api">JobCatalogListener.AddJobCallback</a></td>
<td class="colLast">
<div class="block">A standard implementation of onAddJob as a functional object</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/JobCatalogListener.DeleteJobCallback.html" title="class in gobblin.runtime.api">JobCatalogListener.DeleteJobCallback</a></td>
<td class="colLast">
<div class="block">A standard implementation of onDeleteJob as a functional object</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/JobCatalogListener.UpdateJobCallback.html" title="class in gobblin.runtime.api">JobCatalogListener.UpdateJobCallback</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/JobExecutionLauncher.StandardMetrics.html" title="class in gobblin.runtime.api">JobExecutionLauncher.StandardMetrics</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/JobExecutionResult.html" title="class in gobblin.runtime.api">JobExecutionResult</a></td>
<td class="colLast">
<div class="block">Represents the result of the execution of a Gobblin job.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/JobExecutionState.html" title="class in gobblin.runtime.api">JobExecutionState</a></td>
<td class="colLast">
<div class="block">TODO</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/JobExecutionStateListener.MetadataChangeCallback.html" title="class in gobblin.runtime.api">JobExecutionStateListener.MetadataChangeCallback</a></td>
<td class="colLast">
<div class="block">A standard implementation of <a href="../../../gobblin/runtime/api/JobExecutionStateListener.html#onMetadataChange-gobblin.runtime.api.JobExecutionState-java.lang.String-java.lang.Object-java.lang.Object-"><code>JobExecutionStateListener.onMetadataChange(JobExecutionState, String, Object, Object)</code></a>
as a functional object.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/JobExecutionStateListener.StageTransitionCallback.html" title="class in gobblin.runtime.api">JobExecutionStateListener.StageTransitionCallback</a></td>
<td class="colLast">
<div class="block">A standard implementation of <a href="../../../gobblin/runtime/api/JobExecutionStateListener.html#onStageTransition-gobblin.runtime.api.JobExecutionState-java.lang.String-java.lang.String-"><code>JobExecutionStateListener.onStageTransition(JobExecutionState, String, String)</code></a>
as a functional object.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/JobExecutionStateListener.StatusChangeCallback.html" title="class in gobblin.runtime.api">JobExecutionStateListener.StatusChangeCallback</a></td>
<td class="colLast">
<div class="block">A standard implementation of <code>JobExecutionStateListener#onStatusChange(JobExecutionState, RunningState, RunningState)</code>
as a functional object.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/JobLifecycleListener.JobLaunchCallback.html" title="class in gobblin.runtime.api">JobLifecycleListener.JobLaunchCallback</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/JobSpec.html" title="class in gobblin.runtime.api">JobSpec</a></td>
<td class="colLast">
<div class="block">Defines a Gobblin Job that can be run once, or multiple times.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/JobSpec.Builder.html" title="class in gobblin.runtime.api">JobSpec.Builder</a></td>
<td class="colLast">
<div class="block">Builder for <a href="../../../gobblin/runtime/api/JobSpec.html" title="class in gobblin.runtime.api"><code>JobSpec</code></a>s.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/JobSpecSchedulerListener.JobScheduledCallback.html" title="class in gobblin.runtime.api">JobSpecSchedulerListener.JobScheduledCallback</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/JobSpecSchedulerListener.JobTriggeredCallback.html" title="class in gobblin.runtime.api">JobSpecSchedulerListener.JobTriggeredCallback</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/JobSpecSchedulerListener.JobUnscheduledCallback.html" title="class in gobblin.runtime.api">JobSpecSchedulerListener.JobUnscheduledCallback</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/SpecCatalog.StandardMetrics.html" title="class in gobblin.runtime.api">SpecCatalog.StandardMetrics</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/SpecCatalogListener.AddSpecCallback.html" title="class in gobblin.runtime.api">SpecCatalogListener.AddSpecCallback</a></td>
<td class="colLast">
<div class="block">A standard implementation of onAddSpec as a functional object</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/SpecCatalogListener.DeleteSpecCallback.html" title="class in gobblin.runtime.api">SpecCatalogListener.DeleteSpecCallback</a></td>
<td class="colLast">
<div class="block">A standard implementation of onDeleteSpec as a functional object</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/SpecCatalogListener.UpdateSpecCallback.html" title="class in gobblin.runtime.api">SpecCatalogListener.UpdateSpecCallback</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/TopologySpec.html" title="class in gobblin.runtime.api">TopologySpec</a></td>
<td class="colLast">
<div class="block">Data model representation that describes a topology ie.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/TopologySpec.Builder.html" title="class in gobblin.runtime.api">TopologySpec.Builder</a></td>
<td class="colLast">
<div class="block">Builder for <a href="../../../gobblin/runtime/api/TopologySpec.html" title="class in gobblin.runtime.api"><code>TopologySpec</code></a>s.</div>
</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList">
<table class="typeSummary" border="0" cellpadding="3" cellspacing="0" summary="Exception Summary table, listing exceptions, and an explanation">
<caption><span>Exception Summary</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Exception</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/JobSpecNotFoundException.html" title="class in gobblin.runtime.api">JobSpecNotFoundException</a></td>
<td class="colLast">
<div class="block">An exception thrown when a JobSpec with a given URI is not found.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/JobTemplate.TemplateException.html" title="class in gobblin.runtime.api">JobTemplate.TemplateException</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../gobblin/runtime/api/SpecNotFoundException.html" title="class in gobblin.runtime.api">SpecNotFoundException</a></td>
<td class="colLast">
<div class="block">An <a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang"><code>Exception</code></a> thrown when a <a href="http://linkedin.github.io/gobblin/javadoc/0.11.0/gobblin-api/gobblin/runtime/api/Spec.html?is-external=true" title="class or interface in gobblin.runtime.api"><code>Spec</code></a> with the given <a href="https://docs.oracle.com/javase/7/docs/api/java/net/URI.html?is-external=true" title="class or interface in java.net"><code>URI</code></a> cannot be found.</div>
</td>
</tr>
</tbody>
</table>
</li>
</ul>
<a name="package.description">
<!-- -->
</a>
<h2 title="Package gobblin.runtime.api Description">Package gobblin.runtime.api Description</h2>
<div class="block">The Gobblin Execution Model.
<p>The Gobblin launcher components:
<dl>
<dt>Gobblin instance</dt>
<dd>A self-contained context for running alike Gobblin jobs. These jobs share location where
they are stored and managed, how they are scheduled, and how they are run.
<dl>
<dt>Gobblin instance driver (<a href="../../../gobblin/runtime/api/GobblinInstanceDriver.html" title="interface in gobblin.runtime.api"><code>GobblinInstanceDriver</code></a>)</dt>
<dd>Starts all global Gobblin services, instantiates Job Catalog, Job Launcher, and scheduler.
Interprets job specs to schedule via the executor or run immediately. (Similar to original
JobScheduler class).</dd>
</dl>
<dt>Gobblin instance launcher (<a href="../../../gobblin/runtime/api/GobblinInstanceLauncher.html" title="interface in gobblin.runtime.api"><code>GobblinInstanceLauncher</code></a>)<dt>
<dd>Main class instantiated by the JVM or running framework. Reads application level
configurations, instantiates and runs the Gobblin instance driver.
Examples: JavaMainAppLauncher (original SchedulerDaemon), AzkabanAppLauncher (original
AzkabanJobLauncher).</dd>
</dd>
<dt>Gobblin job</dt>
<dd>An execution unit that can ingest and process data from a single source.
<dl>
<dt>JobSpec</dt>
<dd>The static part of a job, describes the job name, group, and associated configuration.</dd>
<dt>JobExecution</dt>
<dd>A specific execution of the job.</dd>
<dt>JobExecution Driver</dt>
<dd>Executes the job and its tasks. This can be done locally in a thread-pool,
or as a M/R job, as a Yarn job using the Helix task execution framework, etc. This
concept replaces the previous <a href="../../../gobblin/runtime/JobLauncher.html" title="interface in gobblin.runtime"><code>JobLauncher</code></a>. </dd>
<dt>JobExecution Launcher (<a href="../../../gobblin/runtime/api/JobExecutionLauncher.html" title="interface in gobblin.runtime.api"><code>JobExecutionLauncher</code></a>)</dt>
<dd>Instantiates the JobExecution Driver. The driver may be instantiated locally, or it
can be launched in a remote container (similarly to Oozie). JobExecutionLauncher should not
be confused with the legacy <a href="../../../gobblin/runtime/JobLauncher.html" title="interface in gobblin.runtime"><code>JobLauncher</code></a>. Essentially, we decided to
roughly split the JobLauncher into JobExecutionLauncher and a JobExecutionDriver. This
allows us to abstract the aspect of instantiating and running the JobExecutionDriver. Thus,
we have the option of running the driver locally or remotely. </dd>
</dl>
</dd>
<dt>Job catalog (<a href="../../../gobblin/runtime/api/JobCatalog.html" title="interface in gobblin.runtime.api"><code>JobCatalog</code></a>)</dt>
<dd>Maintains the collection of JobSpecs known to a specific Gobblin instance.
<dl>
<dt>JobSpec Monitor (<a href="../../../gobblin/runtime/api/JobSpecMonitorFactory.html" title="interface in gobblin.runtime.api"><code>JobSpecMonitorFactory</code></a>)</dt>
<dd>Discovers jobs to execute and generates job specs for each one.</dd>
</dl>
</dd>
<dt>Job Scheduler (<a href="../../../gobblin/runtime/api/JobSpecScheduler.html" title="interface in gobblin.runtime.api"><code>JobSpecScheduler</code></a>)</dt>
<dd>A pluggable scheduler implementation that triggers job executions on a schedule.
Examples: Quartz, pass-through.
</dd>
</dl>
<p>Overall, in the current design, Gobblin defines an execution hierarchy: a Gobblin Instance
runs zero, one or more Gobblin Jobs which consist of zero, one or more tasks. For each of the
levels in the hierarchy, there is a Driver which is responsible of running the children
components and a Launcher which is responsible for instantiating and invoking the Driver.</div>
</div>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../overview-summary.html">Overview</a></li>
<li class="navBarCell1Rev">Package</li>
<li>Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../index-all.html">Index</a></li>
<li><a href="../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../gobblin/runtime/package-summary.html">Prev&nbsp;Package</a></li>
<li><a href="../../../gobblin/runtime/app/package-summary.html">Next&nbsp;Package</a></li>
</ul>
<ul class="navList">
<li><a href="../../../index.html?gobblin/runtime/api/package-summary.html" target="_top">Frames</a></li>
<li><a href="package-summary.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</body>
</html>