> On March 27, 2018, 1:02 a.m., Robert Kanter wrote:
> > client/src/main/java/org/apache/oozie/cli/ApiJarFactory.java
> > Lines 41 (patched)
> > <https://reviews.apache.org/r/64029/diff/5/?file=1983722#file1983722line41>
> >
> >     Looks like this is used only by unit tests.  If so, then perhaps this 
> > should be moved to a test package and made package private?  I just want to 
> > make sure users won't start trying to use this class when they shouldn't be.

Moved to the same package, and set class and constructor package-private.


> On March 27, 2018, 1:02 a.m., Robert Kanter wrote:
> > client/src/main/java/org/apache/oozie/cli/WorkflowFactoryCompiler.java
> > Lines 36 (patched)
> > <https://reviews.apache.org/r/64029/diff/5/?file=1983725#file1983725line36>
> >
> >     Again, if this is for unit tests, we should move it to a different test 
> > and limit its scope if possible.

Moved to the same package, and set class and constructor package-private.


> On March 27, 2018, 1:02 a.m., Robert Kanter wrote:
> > client/src/main/java/org/apache/oozie/cli/WorkflowFactoryCompiler.java
> > Lines 65 (patched)
> > <https://reviews.apache.org/r/64029/diff/5/?file=1983725#file1983725line65>
> >
> >     Let's not turn this into Hadoop :)
> >     
> >     If this isn't working, it looks like the fileManager can be used to do 
> > something equivalent and you can throw away the ````options````.  Take a 
> > look at the second answer on the StackOverflow.

Refactored / rewritten `TestOozieCLI#createWorkflowApiJar()` to use 
`Class#getProtectionDomain().getCodeSource().getLocation()` instead for both 
JAR based (Maven) and class file based (IDE) executions.

WorkflowFactoryCompiler has been deleted.


> On March 27, 2018, 1:02 a.m., Robert Kanter wrote:
> > core/src/main/java/org/apache/oozie/BaseLocalOozieClient.java
> > Lines 558-559 (original), 559-568 (patched)
> > <https://reviews.apache.org/r/64029/diff/5/?file=1983727#file1983727line559>
> >
> >     Doesn't this change the V0 and V1 APIs?

No, it's only used from inside `OozieCLI#checkApiJar()`, 
`OozieCLI#validateCommand()`, and from one test case.


> On March 27, 2018, 1:02 a.m., Robert Kanter wrote:
> > docs/src/site/twiki/DG_CommandLineTool.twiki
> > Lines 1095 (patched)
> > <https://reviews.apache.org/r/64029/diff/5/?file=1983738#file1983738line1095>
> >
> >     ````queueName```` is a custom user-defined property, isn't it?  Just 
> > like ````nameNode```` and ````JobTracker````.  Does the Jobs API always 
> > require these three properties?  While commonly used (because users often 
> > copy the examples where these are used), they're not officially standard.

Being more clear on that subject. There can be `job.properties` when submitting 
/ running an API JAR workflow, or that can be omitted - in that case, every 
parameter the user defined has to be supplied at the command line.


> On March 27, 2018, 1:02 a.m., Robert Kanter wrote:
> > docs/src/site/twiki/DG_JobsAPI.twiki
> > Lines 37 (patched)
> > <https://reviews.apache.org/r/64029/diff/5/?file=1983739#file1983739line37>
> >
> >     Does the Jobs API not enforce this?

Extended with more details on how Fluent Job API handles that case.


> On March 27, 2018, 1:02 a.m., Robert Kanter wrote:
> > docs/src/site/twiki/DG_JobsAPI.twiki
> > Lines 61 (patched)
> > <https://reviews.apache.org/r/64029/diff/5/?file=1983739#file1983739line61>
> >
> >     How does this work for backwards compatibility?  i.e. If I generate a 
> > jar using wf schema 1.0 and then upgrade Oozie which includes a 1.1 schema, 
> > is my jar no longer accepted by Oozie?  Do I need to recompile?  Is it 
> > possible that the API has changed and it won't compile anymore?
> >     
> >     We should make sure to have a good story around backwards 
> > compatibility.  I think it's reasonable to only _generate_ jars using the 
> > latest schema, but we should at least accept older jars, ideally without 
> > recompiling.

When new schemas are introduced to Oozie, old Fluent Job API JARs as well as 
old workflow.xml definitions keep of course working.

For the time being I would ship this feature without any more guarantees on 
backward compatibility - the patch is way too huge to deal with anyways. We can 
consider something like having guest-facing API packages versioned like 
`org.apache.oozie.fluentjob.api.v1.workflow` to maintain binary compatibility 
to older XSDs and be able to innovate effortless later.

What do you think?


> On March 27, 2018, 1:02 a.m., Robert Kanter wrote:
> > docs/src/site/twiki/DG_JobsAPI.twiki
> > Lines 162 (patched)
> > <https://reviews.apache.org/r/64029/diff/5/?file=1983739#file1983739line162>
> >
> >     I like these examples - I think they're good for showing the new API.
> >     
> >     It would be great if we could add some examples to the examples module 
> > so users could more easily play with it.  As you know, many users copy our 
> > example XML workflows as a starting place, so it would be good to provide 
> > some Java ones too.  This can be done as a followup JIRA: please file one.

Created three examples in `org.apache.oozie.example.fluentjob` package.


> On March 27, 2018, 1:02 a.m., Robert Kanter wrote:
> > jobs/jobs-api/pom.xml
> > Lines 111-120 (patched)
> > <https://reviews.apache.org/r/64029/diff/5/?file=1983740#file1983740line111>
> >
> >     It's unfortunate that we have to keep this manually :(
> >     
> >     I hope we don't forget to update this when adding new schema versions.  
> > Perhaps there's some way to write a unit test that would fail if a 
> > developer added a newer schema version and didn't update this?  That would 
> > prevent this issue.

Yes, we have to maintain that stuff manually.

Writing a piece of documentation about how to extend new schema versions and 
maintain backwards compatibility. This is achieved by extending this `pom.xml` 
and `xjb/bindings.xml` for the new schema versions, and for the new Fluent API 
JAR generated packages.

I'm thinking of having `org.apache.oozie.fluentjob.api.v1.generated` as a root 
package for all 1.0 XSDs listed in `xjb/bindings.xml`, and used elsewhere.

What do you think?


> On March 27, 2018, 1:02 a.m., Robert Kanter wrote:
> > jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/ActionAttributes.java
> > Lines 29 (patched)
> > <https://reviews.apache.org/r/64029/diff/5/?file=1983744#file1983744line29>
> >
> >     Now that we're on Yarn, we should rename all ````jobTracker```` and 
> > similar to ````resourceManager```` and similar.  The earlier version of the 
> > schemas the Jobs API is supporting is 1.0 (and friends), which all allow 
> > for ````<resource-manager>```` so we should use that and just never even 
> > start with anything Job Tracker.  The generated XML should also use 
> > ````<resource-manager>```` only too.

There's both `<job-tracker>` and `<resource-manager>` within 
`oozie-workflow-1.0.xsd`, and therefore there's both 
`ActionAttributes#jobTracker` and `ActionAttributes#resourceManager`. I'd leave 
the API like it is, only removing `jobTracker` calls when they are already gone 
from XSDs.

Marking as `@Deprecated`, though, and substituting `Builder#withJobTracker()` 
calls w/ `Builder#withResourceManager()` ones both in code, examples, and 
documentation.


> On March 27, 2018, 1:02 a.m., Robert Kanter wrote:
> > jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/ErrorHandler.java
> > Lines 23-34 (patched)
> > <https://reviews.apache.org/r/64029/diff/5/?file=1983758#file1983758line23>
> >
> >     It would be good to add info about this to the twiki docs.  It's a 
> > common pattern to have an email action from an error transition before 
> > hitting a kill node.  Adding an example of that in the twiki docs would be 
> > great too :)

Added into all examples, and update docs with these details of having an 
`EmailAction` as `ErrorHandler`.


> On March 27, 2018, 1:02 a.m., Robert Kanter wrote:
> > jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/factory/SimpleWorkflowFactory.java
> > Lines 34 (patched)
> > <https://reviews.apache.org/r/64029/diff/5/?file=1983795#file1983795line34>
> >
> >     I think this should either be in the test archive/package and/or in the 
> > example artifact.

Moved `SimpleWorkflowFactory` and `MultipleShellNodesWorkflowFactory` to the 
`test-jar` artifact of `oozie-fluent-job-api`, and using that in `oozie-core`.

Also introduced `SimpleWorkflowFactory` as an example.


> On March 27, 2018, 1:02 a.m., Robert Kanter wrote:
> > jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/oozie/dag/Decision.java
> > Lines 32 (patched)
> > <https://reviews.apache.org/r/64029/diff/5/?file=1983835#file1983835line32>
> >
> >     Should we make this, and other nodes that the user shouldn't need to 
> > use, private (or at least package-private the constructor)?

Because the `? extends DozerConverter` classes are in other packages, we 
cannot. I think it's enough to have documented how to use the API, and that 
most of these value object classes are not easily modified apart from `Builder` 
instances.


> On March 27, 2018, 1:02 a.m., Robert Kanter wrote:
> > jobs/jobs-client/src/test/java/org/apache/oozie/jobs/client/examples/TestJavaMainExample.java
> > Lines 35 (patched)
> > <https://reviews.apache.org/r/64029/diff/5/?file=1983940#file1983940line35>
> >
> >     What are the "Test___Example" classes for?  They look like they're unit 
> > tests but don't actually assert anything.  While it's nice to have examples 
> > of all of the actions, I don't think anyone's going to look at these.  
> > Users won't because they won't know to look here for examples, and Oozie 
> > devs won't because these won't be failing (unless something is really 
> > wrong).  
> >     
> >     Perhaps we should repurpose these for actual examples in the examples 
> > artifact instead?  I suggested in a different comment that it would be good 
> > to have these because users often start with our XML examples when writing 
> > workflows.  We can make this a followup JIRA if you want.
> >     
> >     In their current state, I'm not sure these are helping anyone.

Moved to `oozie-examples` artifact as actual examples into package 
`org.apache.oozie.example.fluentjob`.


- András


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/64029/#review200001
-----------------------------------------------------------


On March 20, 2018, 9:58 p.m., András Piros wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/64029/
> -----------------------------------------------------------
> 
> (Updated March 20, 2018, 9:58 p.m.)
> 
> 
> Review request for oozie, Attila Sasvari, Peter Cseh, and Robert Kanter.
> 
> 
> Repository: oozie-git
> 
> 
> Description
> -------
> 
> OOZIE-2339 Provide an API for writing jobs based on the XSD schemas
> 
> 
> Diffs
> -----
> 
>   .gitignore a4285a0d77ac2e4e8fc4afbfa21bf9fd287b3e4d 
>   client/pom.xml 31cd43fa5311484f92cc8d33b4fc7b4cf13d66c4 
>   client/src/main/java/org/apache/oozie/cli/ApiJarFactory.java PRE-CREATION 
>   client/src/main/java/org/apache/oozie/cli/ApiJarLoader.java PRE-CREATION 
>   client/src/main/java/org/apache/oozie/cli/OozieCLI.java 
> 4abc7502c0c9d8b59ded2baaed30c407ad073008 
>   client/src/main/java/org/apache/oozie/cli/WorkflowFactoryCompiler.java 
> PRE-CREATION 
>   client/src/main/java/org/apache/oozie/client/OozieClient.java 
> 4c8175628ba5ee346d97ad984532662032b88acc 
>   core/src/main/java/org/apache/oozie/BaseLocalOozieClient.java 
> 38fb006980c0acb582b4f91175be1ced8a1afa79 
>   core/src/main/java/org/apache/oozie/local/LocalOozie.java 
> 9ab646cd53223d903e387eb92aa103a7b6577d0f 
>   core/src/main/java/org/apache/oozie/servlet/BaseJobServlet.java 
> e1bd3cf61aabfa4311881b2944fc9f10ffe9145d 
>   core/src/main/java/org/apache/oozie/servlet/BaseJobsServlet.java 
> d4b08711223356c8d4f58a3391b6b87efa0a2b73 
>   core/src/main/java/org/apache/oozie/servlet/ServletUtilities.java 
> 9cdd915c02a3e34ad211cf6cced2e64f3a1196a0 
>   core/src/main/java/org/apache/oozie/servlet/V0JobsServlet.java 
> ff50f3d121d8af7d607124424915e1bf30ffb109 
>   core/src/main/java/org/apache/oozie/servlet/V1JobsServlet.java 
> c1ca65fd2f8bf0f3e5c618dddcba3bf52eaf5420 
>   core/src/main/java/org/apache/oozie/servlet/V2ValidateServlet.java 
> b86fa6ace43aead115302aad3ae15368b15f1923 
>   core/src/main/resources/oozie-default.xml 
> 966dd29b20ffb4a627418d62403c0cec166dd147 
>   core/src/test/java/org/apache/oozie/client/TestOozieCLI.java 
> 3395cc25d27805444ba0b6463357c4ecff977ac1 
>   core/src/test/java/org/apache/oozie/test/MiniOozieTestCase.java 
> 12ede028655f2a30613a9f802e48cd3a27af6ed9 
>   docs/src/site/twiki/DG_CommandLineTool.twiki 
> a94201ded8451cc725b40e9f73182ecaa52be88a 
>   docs/src/site/twiki/DG_JobsAPI.twiki PRE-CREATION 
>   jobs/jobs-api/pom.xml PRE-CREATION 
>   jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/Condition.java 
> PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/GraphVisualization.java 
> PRE-CREATION 
>   jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/ModifyOnce.java 
> PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/ActionAttributes.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/ActionAttributesBuilder.java
>  PRE-CREATION 
>   jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/Builder.java 
> PRE-CREATION 
>   jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/ChFSBase.java 
> PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/ChFSBaseBuilder.java
>  PRE-CREATION 
>   jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/Chgrp.java 
> PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/ChgrpBuilder.java
>  PRE-CREATION 
>   jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/Chmod.java 
> PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/ChmodBuilder.java
>  PRE-CREATION 
>   jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/Delete.java 
> PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/DistcpAction.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/DistcpActionBuilder.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/EmailAction.java 
> PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/EmailActionBuilder.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/ErrorHandler.java
>  PRE-CREATION 
>   jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/FSAction.java 
> PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/FSActionBuilder.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/HasAttributes.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/Hive2Action.java 
> PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/Hive2ActionBuilder.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/HiveAction.java 
> PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/HiveActionBuilder.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/JavaAction.java 
> PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/JavaActionBuilder.java
>  PRE-CREATION 
>   jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/Launcher.java 
> PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/LauncherBuilder.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/MapReduceAction.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/MapReduceActionBuilder.java
>  PRE-CREATION 
>   jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/Mkdir.java 
> PRE-CREATION 
>   jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/Move.java 
> PRE-CREATION 
>   jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/Node.java 
> PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/NodeBuilderBaseImpl.java
>  PRE-CREATION 
>   jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/PigAction.java 
> PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/PigActionBuilder.java
>  PRE-CREATION 
>   jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/Pipes.java 
> PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/PipesBuilder.java
>  PRE-CREATION 
>   jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/Prepare.java 
> PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/PrepareBuilder.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/ShellAction.java 
> PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/ShellActionBuilder.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/SparkAction.java 
> PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/SparkActionBuilder.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/SqoopAction.java 
> PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/SqoopActionBuilder.java
>  PRE-CREATION 
>   jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/SshAction.java 
> PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/SshActionBuilder.java
>  PRE-CREATION 
>   jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/Streaming.java 
> PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/StreamingBuilder.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/SubWorkflowAction.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/SubWorkflowActionBuilder.java
>  PRE-CREATION 
>   jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/action/Touchz.java 
> PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/factory/SimpleWorkflowFactory.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/factory/WorkflowFactory.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/mapping/BooleanToFLAGConverter.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/mapping/BooleanToShellFLAGConverter.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/mapping/BooleanToSshFLAGConverter.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/mapping/CredentialsConverter.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/mapping/DecisionConverter.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/mapping/DistcpConfigurationConverter.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/mapping/DistcpPrepareConverter.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/mapping/DozerBeanMapperSingleton.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/mapping/ExplicitNodeConverter.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/mapping/ForkConverter.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/mapping/GlobalConverter.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/mapping/GraphNodes.java 
> PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/mapping/GraphNodesToWORKFLOWAPPConverter.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/mapping/GraphToWORKFLOWAPPConverter.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/mapping/Hive2ConfigurationConverter.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/mapping/Hive2LauncherConverter.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/mapping/Hive2PrepareConverter.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/mapping/HiveConfigurationConverter.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/mapping/HiveLauncherConverter.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/mapping/HivePrepareConverter.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/mapping/InlineWorkflowConfigurationConverter.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/mapping/InlineWorkflowLauncherConverter.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/mapping/InlineWorkflowPrepareConverter.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/mapping/JoinConverter.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/mapping/MapToConfigurationPropertyConverter.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/mapping/ParametersConverter.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/mapping/RealChildLocator.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/mapping/ShellConfigurationConverter.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/mapping/ShellLauncherConverter.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/mapping/ShellPrepareConverter.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/mapping/SparkConfigurationConverter.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/mapping/SparkLauncherConverter.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/mapping/SparkPrepareConverter.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/mapping/SqoopConfigurationConverter.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/mapping/SqoopLauncherConverter.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/mapping/SqoopPrepareConverter.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/mapping/StartConverter.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/oozie/dag/DagNodeWithCondition.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/oozie/dag/Decision.java 
> PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/oozie/dag/DecisionJoin.java
>  PRE-CREATION 
>   jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/oozie/dag/End.java 
> PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/oozie/dag/ExplicitNode.java
>  PRE-CREATION 
>   jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/oozie/dag/Fork.java 
> PRE-CREATION 
>   jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/oozie/dag/Graph.java 
> PRE-CREATION 
>   jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/oozie/dag/Join.java 
> PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/oozie/dag/JoiningNodeBase.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/oozie/dag/NodeBase.java 
> PRE-CREATION 
>   jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/oozie/dag/Start.java 
> PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/serialization/WorkflowMarshaller.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/workflow/ConfigurationEntry.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/workflow/Credential.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/workflow/Credentials.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/workflow/CredentialsBuilder.java
>  PRE-CREATION 
>   jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/workflow/Global.java 
> PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/workflow/GlobalBuilder.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/workflow/Parameter.java 
> PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/workflow/Parameters.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/workflow/ParametersBuilder.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/workflow/Workflow.java 
> PRE-CREATION 
>   
> jobs/jobs-api/src/main/java/org/apache/oozie/jobs/api/workflow/WorkflowBuilder.java
>  PRE-CREATION 
>   jobs/jobs-api/src/main/resources/action_mappings.xml PRE-CREATION 
>   jobs/jobs-api/src/main/resources/checkstyle-header.txt PRE-CREATION 
>   jobs/jobs-api/src/main/resources/checkstyle.xml PRE-CREATION 
>   jobs/jobs-api/src/main/resources/dozer_config.xml PRE-CREATION 
>   jobs/jobs-api/src/main/resources/mappingGraphToWORKFLOWAPP.xml PRE-CREATION 
>   jobs/jobs-api/src/main/xjb/bindings.xml PRE-CREATION 
>   jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/NodesToPng.java 
> PRE-CREATION 
>   jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/TestCondition.java 
> PRE-CREATION 
>   jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/TestModifyOnce.java 
> PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/action/TestActionAttributesBuilder.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/action/TestChBaseBuilder.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/action/TestChgrpBuilder.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/action/TestChmodBuilder.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/action/TestDelete.java 
> PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/action/TestDistcpActionBuilder.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/action/TestEmailActionBuilder.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/action/TestErrorHandler.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/action/TestFSActionBuilder.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/action/TestHive2ActionBuilder.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/action/TestHiveActionBuilder.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/action/TestJavaActionBuilder.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/action/TestLauncherBuilder.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/action/TestMapReduceActionBuilder.java
>  PRE-CREATION 
>   jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/action/TestMove.java 
> PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/action/TestNodeBuilderBaseImpl.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/action/TestPigActionBuilder.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/action/TestPipesBuilder.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/action/TestPrepareBuilder.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/action/TestShellActionBuilder.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/action/TestSparkActionBuilder.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/action/TestSqoopActionBuilder.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/action/TestSshActionBuilder.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/action/TestStreamingBuilder.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/action/TestSubWorkflowBuilder.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/action/TestTouchz.java 
> PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/mapping/TestConfigurationMapping.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/mapping/TestControlNodeMappingBase.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/mapping/TestCredentialsMapping.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/mapping/TestDecisionMapping.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/mapping/TestDeleteMapping.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/mapping/TestDistcpActionMapping.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/mapping/TestEmailActionMapping.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/mapping/TestEndMapping.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/mapping/TestExplicitNodeMapping.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/mapping/TestFSActionMapping.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/mapping/TestForkMapping.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/mapping/TestGlobalMapping.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/mapping/TestGraphMapping.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/mapping/TestHive2ActionMapping.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/mapping/TestHiveActionMapping.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/mapping/TestJavaActionMapping.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/mapping/TestJoinMapping.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/mapping/TestMapReduceActionMapping.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/mapping/TestMappings.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/mapping/TestMkdirMapping.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/mapping/TestParametersMapping.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/mapping/TestPigActionMapping.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/mapping/TestPipesMapping.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/mapping/TestPrepareMapping.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/mapping/TestShellActionMapping.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/mapping/TestSparkActionMapping.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/mapping/TestSqoopActionMapping.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/mapping/TestSshActionMapping.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/mapping/TestStartMapping.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/mapping/TestStreamingMapping.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/mapping/TestSubWorkflowActionMapping.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/oozie/dag/TestDecision.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/oozie/dag/TestDecisionJoin.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/oozie/dag/TestEnd.java 
> PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/oozie/dag/TestExplicitNode.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/oozie/dag/TestFork.java 
> PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/oozie/dag/TestGraph.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/oozie/dag/TestJoin.java 
> PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/oozie/dag/TestJoiningNodeBase.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/oozie/dag/TestNodeBase.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/oozie/dag/TestStart.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/workflow/TestCredentialsBuilder.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/workflow/TestGlobalBuilder.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/workflow/TestParametersBuilder.java
>  PRE-CREATION 
>   
> jobs/jobs-api/src/test/java/org/apache/oozie/jobs/api/workflow/TestWorkflowBuilder.java
>  PRE-CREATION 
>   jobs/jobs-client/pom.xml PRE-CREATION 
>   
> jobs/jobs-client/src/test/java/org/apache/oozie/jobs/client/examples/TestCredentialsExample.java
>  PRE-CREATION 
>   
> jobs/jobs-client/src/test/java/org/apache/oozie/jobs/client/examples/TestGlobalExample.java
>  PRE-CREATION 
>   
> jobs/jobs-client/src/test/java/org/apache/oozie/jobs/client/examples/TestJavaMainExample.java
>  PRE-CREATION 
>   
> jobs/jobs-client/src/test/java/org/apache/oozie/jobs/client/examples/TestParametersExample.java
>  PRE-CREATION 
>   
> jobs/jobs-client/src/test/java/org/apache/oozie/jobs/client/examples/TestShellExample.java
>  PRE-CREATION 
>   
> jobs/jobs-client/src/test/java/org/apache/oozie/jobs/client/examples/TestSparkExample.java
>  PRE-CREATION 
>   
> jobs/jobs-client/src/test/java/org/apache/oozie/jobs/client/jaxb/TestJAXBWorkflow.java
>  PRE-CREATION 
>   
> jobs/jobs-client/src/test/java/org/apache/oozie/jobs/client/minitest/TestDistcpAction.java
>  PRE-CREATION 
>   
> jobs/jobs-client/src/test/java/org/apache/oozie/jobs/client/minitest/TestEmailAction.java
>  PRE-CREATION 
>   
> jobs/jobs-client/src/test/java/org/apache/oozie/jobs/client/minitest/TestFSAction.java
>  PRE-CREATION 
>   
> jobs/jobs-client/src/test/java/org/apache/oozie/jobs/client/minitest/TestHive2Action.java
>  PRE-CREATION 
>   
> jobs/jobs-client/src/test/java/org/apache/oozie/jobs/client/minitest/TestHiveAction.java
>  PRE-CREATION 
>   
> jobs/jobs-client/src/test/java/org/apache/oozie/jobs/client/minitest/TestJavaAction.java
>  PRE-CREATION 
>   
> jobs/jobs-client/src/test/java/org/apache/oozie/jobs/client/minitest/TestMapReduceAction.java
>  PRE-CREATION 
>   
> jobs/jobs-client/src/test/java/org/apache/oozie/jobs/client/minitest/TestPigAction.java
>  PRE-CREATION 
>   
> jobs/jobs-client/src/test/java/org/apache/oozie/jobs/client/minitest/TestShellAction.java
>  PRE-CREATION 
>   
> jobs/jobs-client/src/test/java/org/apache/oozie/jobs/client/minitest/TestSparkAction.java
>  PRE-CREATION 
>   
> jobs/jobs-client/src/test/java/org/apache/oozie/jobs/client/minitest/TestSqoopAction.java
>  PRE-CREATION 
>   
> jobs/jobs-client/src/test/java/org/apache/oozie/jobs/client/minitest/TestSshAction.java
>  PRE-CREATION 
>   jobs/jobs-client/src/test/resources/workflow-all-actions.xml PRE-CREATION 
>   jobs/jobs-client/src/test/resources/workflow-mapreduce-action.xml 
> PRE-CREATION 
>   jobs/pom.xml PRE-CREATION 
>   minitest/pom.xml 220cdfd3ef4ecfd2038485d3da6330c58c3435e8 
>   minitest/src/test/java/org/apache/oozie/test/TestWorkflow.java 
> 4257b60b132d40a9bbaf24ec75ae1a125ecb6855 
>   minitest/src/test/java/org/apache/oozie/test/WorkflowTestCase.java 
> PRE-CREATION 
>   pom.xml 274a04715935437f74601e44a8522649dcd1c433 
> 
> 
> Diff: https://reviews.apache.org/r/64029/diff/5/
> 
> 
> Testing
> -------
> 
> More hundred JUnit test cases under `jobs-api` module. Some of these leverage 
> `TestWorkflow` from `minitest` that uses `OozieClient`, `MiniDFSCluster`, 
> `MiniMRCluster` for integration testing.
> 
> 
> Thanks,
> 
> András Piros
> 
>

Reply via email to