Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
376 commits
Select commit Hold shift + click to select a range
66a8db3
Added a new ViewAction that will be used to display the result and ex…
Sep 2, 2012
ec55c19
Updated the refresh cycle and graphics
Sep 3, 2012
dfd84b0
Updated graphics
Sep 4, 2012
d8b9526
Updated graphics
Sep 4, 2012
d56445c
Added spinner (spin.js)
Sep 5, 2012
a64b36d
We need to check if any errors occurred before updating the model sta…
Sep 6, 2012
820bf28
Added a new exception strategy
Sep 6, 2012
488b78b
Fixed a problem regarding reporting of test results
Sep 7, 2012
af33e6d
Updated plugin classes
Sep 8, 2012
e5eb45e
Updated jenkins plugin
Sep 9, 2012
ddb9e93
When using the -Dtest=MyImplementation parameter and if MyImplementat…
Sep 15, 2012
0e50124
Renamed modules to conform to maven standard
Sep 15, 2012
fe7008d
Renamed modules to conform to maven standard
Sep 15, 2012
2ea350d
Updated readme
Sep 15, 2012
27e45bb
Added the intellij plugin as a module
Sep 15, 2012
5c150b1
Updated the jenkins plugin.
Sep 23, 2012
7dca944
Updated the intellij plugin
Oct 3, 2012
0b2b61f
Added a new jira module
Nov 8, 2012
4e96a5c
New StopCondition that always call a user defined method
Jan 16, 2013
4a63006
update
Feb 24, 2013
8ed9a58
Removed unused modules and changed the package of the status classes
Feb 25, 2013
f8f273f
Moved implementations into impl subpackages
Feb 25, 2013
9f17ce6
refactor
Feb 27, 2013
91ae305
Removed intellij plugin naming convention of variables
Feb 27, 2013
fc62e02
Refactor
Feb 27, 2013
0b1c2b4
Added embryo for "Eating your own dog food" tests
Feb 27, 2013
e2379d6
Changed the internal model to a immutable version, and also created a…
Mar 11, 2013
32d8935
Changed the internal model to a immutable version, and also created a…
Mar 12, 2013
01ae68d
Changed the internal model to a immutable version, and also created a…
Mar 14, 2013
b9eda5b
New modules
Mar 15, 2013
0566a37
Added thrift definition file
Mar 16, 2013
e1abb6d
Added more functions to the graphwalker thrift service and improved t…
Mar 16, 2013
18c6c07
Improved the api
Mar 17, 2013
52ef6a9
Improved the api
Mar 17, 2013
1ac67e2
Added classes for the shopping cart example
Mar 18, 2013
f48ed9f
Added pom file for the graphwalker-example
Mar 18, 2013
f4f3cd0
ExecutionContext defines all models known to the context, also added …
Mar 18, 2013
3086304
Removed the Algorithm interface, because its not used
Mar 18, 2013
8df2781
Removed the Report generation and Callback condition from core module
Mar 18, 2013
3ec5b01
Removed BacktrackStrategy and moved the GraphWalker java object to th…
Mar 18, 2013
0fee940
Wraps the GraphWalkerService.Client object into a GraphWalker object,…
Mar 19, 2013
1dec934
Removed the Configuration class, ModelContext is used instead
Mar 19, 2013
fb89650
Refactor
Mar 20, 2013
7ac6578
Refactor
Mar 21, 2013
ac221e9
Added implementation for stop conditions and path generators
Mar 21, 2013
7647716
Executes actions on edges and added annotations
Mar 21, 2013
a3eeb51
Added ExceptionHandler annotation and updated the Amazon example to u…
Mar 22, 2013
abc51c9
Rename method
Mar 22, 2013
4f981b9
Changed default script language into JavaScript
Mar 23, 2013
d763465
Started with the AStar implementation
Mar 23, 2013
3be5df9
Added support to access the ModelContext, that contains the current e…
Mar 26, 2013
98cf595
Updated stop conditions to handle multiple elements with the same nam…
May 4, 2013
8ba65a6
Added validation test for StopCondition (ReachedEdge)
nilols May 4, 2013
ea37aa6
Bundles the Javadoc documentation into a jar file
nilols May 24, 2013
49124f1
Added the plugin modules
nilols May 24, 2013
3f12837
Moved classes around to simplify dependencies
nilols May 25, 2013
979eeda
Started to update the maven plugin by adding new goals in order to en…
nilols May 25, 2013
da75bfb
Chained validate and test mojo so whenever graphwalker:test is called…
nilols May 26, 2013
0e3c0bb
Changed plugin annotations into java 5 version
nilols May 26, 2013
a398b05
GenerateMojo will now generate interface from graphml files, but we n…
nilols May 26, 2013
7042431
Added @Model annotation and simplified GenerateMojo
nilols May 27, 2013
9e4004f
Removed the force parameter, wanna keep it simple. We can add more co…
nilols May 27, 2013
eaf7985
Improved the code generator, models will be converted into interfaces…
nilols Jun 1, 2013
31dadfd
Split the generate mojo into generate and test-generate mojos
nilols Jun 1, 2013
65b92e8
Updated the order plugin goals will be executed
nilols Jun 1, 2013
2bb37aa
Fixed javadoc tags
nilols Jun 2, 2013
82f45cf
Added groups property, comment in generated files and fix for searchi…
nilols Jun 2, 2013
ed7a402
Changed the @GraphWalker annotation to supports multiple @Execution a…
nilols Jun 2, 2013
f62d229
Removed @Execute for the mojos in the maven plugin, except the test m…
nilols Jun 2, 2013
e2709a6
Changed name on the execution annotation and changed the example impl…
nilols Jun 2, 2013
7769268
Changed package name for the ShoppingCart model
nilols Jun 2, 2013
514891d
Updated the maven plugin, lifecycle and configuration parameters.
nilols Jun 2, 2013
7941070
Because, both the jenkins and the maven plugin, needs to be able to r…
nilols Jun 2, 2013
8c75e28
Refactor
nilols Jun 3, 2013
9b7cd19
Refactor
nilols Jun 8, 2013
bc5fe18
Added a flat profiler for computing min, max and average execution ti…
nilols Jun 8, 2013
2328be2
Added implementation for the Amazon test and updated the code generat…
nilols Jun 8, 2013
e91ad3c
Updated the Amazon implementation, changed default script language ba…
nilols Jun 8, 2013
2ea8408
Refactor core and updated the example so that the browser closes afte…
nilols Jun 9, 2013
4c26840
Updated annotations
nilols Jun 9, 2013
5da9100
Removed unused factories
nilols Jun 9, 2013
0e188ae
Removed unused exceptions
nilols Jun 9, 2013
c38b141
Moved report back to core
nilols Jun 9, 2013
9253b7e
Code generator can now handle unnamed elements
nilols Jun 9, 2013
1977480
Added to the model that if the shopping cart already contains books, …
nilols Jun 9, 2013
60e7d57
Implemented the A* algorithm and the A* path generator.
nilols Jun 9, 2013
adeef19
A* throws exception when no path is found
nilols Jun 9, 2013
a68c1c3
Improved the ReflectionUtils search for a matchable constructor when …
nilols Jun 9, 2013
e3a7532
Refactor
nilols Jun 9, 2013
c77ae94
Skip creating interfaces if no changes are made to the models
nilols Jun 9, 2013
8831946
Refactor, removed unused classes
nilols Jun 11, 2013
b0e1d87
Started with the upgrading of the jenkins plugin, the purpose is to d…
nilols Jun 13, 2013
ba90ef2
Update jenkins plugin
Jun 29, 2013
e59860b
Implemented the Squarified Treemap algorithm
nilols Jul 3, 2013
0bc4fdf
Implemented the Squarified Treemap algorithm
nilols Jul 5, 2013
d7e0a18
Implemented the Squarified Treemap algorithm
nilols Jul 5, 2013
2c2b3b4
Started refactoring the maven plugin and moved generated files defaul…
nilols Aug 15, 2013
c85c79a
Added default values for @Model parameters
nilols Aug 15, 2013
dc745f4
Refactoring of the maven plugin
nilols Aug 16, 2013
c3bb76b
Improved the way include, exclude, -Dtest, -Dgroups works. -Dtest wil…
nilols Aug 17, 2013
a1cee2e
Fixed issues with run configuration
nilols Aug 17, 2013
bc9df82
Removed the type from the @Model annotation, a ModelFactory needs to …
nilols Aug 18, 2013
272c964
Refactoring of maven goals
nilols Aug 18, 2013
cec7d32
Refactoring of maven mojos
nilols Aug 19, 2013
067a839
Fixed problem with ExceptionHandlers not being called
nilols Aug 22, 2013
20b17e2
If no @Execution annotation is added to the @GraphWalker annotation a…
nilols Aug 22, 2013
c460aee
Removed the ExceptionStrategy
nilols Aug 22, 2013
792b86c
Information about selected path generator and stop condition is now p…
nilols Aug 23, 2013
9373791
Refactor
nilols Aug 23, 2013
8cc3f85
Added methods for validating models and now failed test will print ou…
nilols Aug 23, 2013
5161e58
Fixed logging aspect
nilols Aug 31, 2013
dbbc667
Fixed problem with different tests using the same ElementFactory
nilols Sep 1, 2013
4153e17
Changed the default stop condition to EdgeCoverage
nilols Sep 1, 2013
eed3d55
Removed report classes from core
nilols Sep 15, 2013
0be1b3a
Added files needed to create junit reports
nilols Sep 15, 2013
de45290
Removed the filter property from the ExceptionHandler annotation, fil…
nilols Sep 15, 2013
bc8791c
Changed the google test to use multiple models
nilols Sep 15, 2013
0f28469
Divided the google example into multiple models
nilols Sep 15, 2013
e62eedf
Created a new maven module, the intention of the api module is to mak…
nilols Sep 15, 2013
15b5805
Changed version
nilols Sep 15, 2013
5017142
Updated API
nilols Sep 16, 2013
803c9d2
Updated API
nilols Sep 16, 2013
dabc0a9
Updated API
nilols Sep 17, 2013
5f935c9
Updated API
nilols Sep 17, 2013
5a51f8b
Updated API
nilols Sep 17, 2013
4994418
Updated API
nilols Sep 17, 2013
258d083
Updated API
nilols Sep 17, 2013
fbf803e
Updated API
nilols Sep 17, 2013
ace23cf
Updated API
nilols Sep 17, 2013
dba4623
Updated API
nilols Sep 17, 2013
d9cea3d
Updated API
nilols Sep 17, 2013
8ce9332
Updated API
nilols Sep 17, 2013
246a096
Updated API
nilols Sep 17, 2013
fe853eb
Started with implementation based on the new API
nilols Sep 17, 2013
4e4d89c
Updated API + Core
nilols Sep 18, 2013
ff0ec94
Updated API + Core
nilols Sep 18, 2013
2ec2c92
Updated API + Core
nilols Sep 18, 2013
2991a35
Started a new rewrite of the code, I will try keep it simple in the c…
nilols Sep 20, 2013
145fa2e
updated model implementation
nilols Sep 22, 2013
0619d7f
updated model implementation
nilols Sep 22, 2013
c94daf1
Added the DFS implementation
nilols Sep 22, 2013
0faeccf
Added the Floyd Warshall and the A* implementations
nilols Sep 22, 2013
004c8e3
Added default stop condition and path generator files
nilols Sep 23, 2013
cc14aca
Added profiler and started with the Sink interface
nilols Sep 24, 2013
10bb5bc
Updated license
nilols Sep 24, 2013
185c198
Added ExecutionContext and updated StopCondition and PathGenerator in…
nilols Sep 25, 2013
a224ddc
Added implementation for StopConditions
nilols Sep 26, 2013
dfad2e4
Added implementations for PathGenerators
nilols Sep 28, 2013
af56d78
Added implementation for ExecutionContext
nilols Sep 30, 2013
b51f245
Added the text resource handling
nilols Oct 19, 2013
118c46e
Implemented visit counter and restart function
nilols Oct 19, 2013
027d8b2
Added annotations
nilols Oct 19, 2013
52dda89
Updated changed class name and package structure
nilols Oct 19, 2013
895eec9
Added annotations and changed the machine signature
nilols Oct 19, 2013
03dca53
Fixed problem with generating interfaces on windows
nilols Oct 26, 2013
e25c84d
Fixed problem with generating interfaces on windows
nilols Oct 26, 2013
e484b18
Added tests for path generators
Jan 28, 2014
2ac8245
Added the Eulerian class that can determine which type of graph the a…
Jan 28, 2014
19a488a
Changed the compiler source and target levels
Jan 28, 2014
c4b864f
Added the base of the new graphwalker-soap module
Jan 29, 2014
0bdf055
Added the base of the new graphwalker-webrenderer module
Jan 29, 2014
6a3f852
Updated versions
Jan 30, 2014
5b1f653
Started implement the WebRenderer
Jan 30, 2014
773a36a
Added license headers
Jan 30, 2014
af4e1b4
Merge branch 'webrenderer'
Jan 30, 2014
d598599
Added extra classes for the geometry
Jan 30, 2014
c067ce9
Added filter for mac specific files
Jan 30, 2014
51c9ae4
Using the graphstream project to layout the graph
Jan 31, 2014
33e8c91
Fix problem with source code generation
Apr 10, 2014
028b854
Add new mojo that automatically updates generated interface
Apr 11, 2014
a129f5a
Update the watch mojo
Apr 14, 2014
872d42c
Update the plugin implementation
Apr 14, 2014
90f2e33
Javadoc
Apr 14, 2014
f21e7cc
Only valid method names will be used when generating code
Apr 15, 2014
0df81dc
Add possibility to choose script language
Apr 15, 2014
0ac160e
Add a helper method for accessing script variables
Apr 21, 2014
a674c3e
Initial work
KristianKarl-zz Jan 27, 2014
350100d
Worked on Unit tests
KristianKarl Jan 28, 2014
eb8041c
Created io module
KristianKarl-zz Jan 28, 2014
051469b
Changed package name to reflect module name
KristianKarl-zz Jan 28, 2014
a86d51b
Name change
KristianKarl-zz Jan 28, 2014
333400b
Added some tests for io
KristianKarl-zz Jan 28, 2014
981c58e
Added more tests
KristianKarl-zz Jan 28, 2014
6dfc876
Working with multiple generators and stop conditions
KristianKarl-zz Jan 28, 2014
ac1537b
Work ing progress with combined generators and multiple stop conditions
KristianKarl-zz Jan 28, 2014
c4e4a98
Work in progress with combined generators and multiple stop conditions
KristianKarl-zz Jan 28, 2014
7719202
WIP
KristianKarl-zz Jan 29, 2014
681b074
WIP
KristianKarl-zz Jan 29, 2014
2c328ff
Working generator / stop condition CLI parser
KristianKarl-zz Jan 30, 2014
4477dd6
WIP change to JCommander
KristianKarl Jan 30, 2014
3f5a385
WIP
KristianKarl Jan 31, 2014
c71ace2
Changed FileSystemException into a unchecked ModelFactoryException
Jan 31, 2014
0f8b1e5
Fixed problem with license headers
Jan 31, 2014
ff51f20
Got rid of unwanted printouts
Jan 31, 2014
80e967e
Removed the commons-vfs2 dependency
Jan 31, 2014
7c5a74e
Added support for opening folders with a lot of graphml files
Jan 31, 2014
a0b12c9
Workaround for a performance issue, regarding flattening of a large a…
Jan 31, 2014
e733ed4
Updated the folder path, vertex and edge count for the largeNumberOfS…
Jan 31, 2014
707bc1a
Remove the test execution from graphwalker-example
Jan 31, 2014
62d57c3
Fixed Offlline
KristianKarl Jan 31, 2014
74a6303
CLI WIP
KristianKarl Jan 31, 2014
a3d16ed
Muted some unit tests. They need to be unmuted when gw is feature com…
KristianKarl Jan 31, 2014
5bb33e7
Update version of jcommander
KristianKarl Apr 21, 2014
9555a79
Update unit tests
KristianKarl Apr 21, 2014
6a3543c
Update models used for unit tests
KristianKarl Apr 21, 2014
6e0991c
Typo
KristianKarl Apr 21, 2014
ce09b25
Wrong indentation off help option
KristianKarl-zz Apr 23, 2014
257ee08
Ignore file
KristianKarl-zz Apr 23, 2014
b5ab81e
Initial documentation
KristianKarl-zz Apr 23, 2014
699cc71
Description
KristianKarl-zz Apr 23, 2014
a81548f
Refactoring
KristianKarl-zz Apr 23, 2014
70dc0a5
Bug fix
KristianKarl-zz Apr 23, 2014
94ff53a
Removed test that was taking too long time to run
KristianKarl-zz Apr 24, 2014
9ca23ca
Added modules
KristianKarl-zz Apr 24, 2014
05138a4
Update from File to String
KristianKarl-zz Apr 24, 2014
2019c3e
Repack the testng Assert so users doesn't need extra dependencies
Apr 25, 2014
1dad860
Update code to java 7
Apr 25, 2014
82ec7a6
Execute @BeforeExecution and @AfterExecution during test execution
Apr 25, 2014
fa882f7
Fixed bug using multiple generators in offline
KristianKarl-zz Apr 25, 2014
f0c27f5
Update the handling of ExecutionStatus
Apr 25, 2014
90d5bb7
Merge remote-tracking branch 'origin/master'
Apr 25, 2014
1f1df5a
Fixed id in Amazon test
Apr 25, 2014
c965c07
Update selenium version
KristianKarl-zz Apr 25, 2014
148a0c1
Initial Travis CI integration
KristianKarl Apr 27, 2014
fd60fcd
Trying package command
KristianKarl Apr 27, 2014
001de77
Update README.md
KristianKarl Apr 27, 2014
46da722
Change back to install
KristianKarl Apr 27, 2014
ee1002a
Less verbose output
KristianKarl Apr 27, 2014
fe64a8d
Crap character in file
KristianKarl Apr 27, 2014
7a2dd6e
Fixed problem with parsing a Guard on multiple lines
Apr 28, 2014
4d21e16
Fixed problem with parsing a Guard on multiple lines
Apr 28, 2014
ff51e2f
Merge branch 'master' of https://github.com/nilols/GraphWalker
Apr 28, 2014
5270e6a
Add handling of guards to the core module
Apr 28, 2014
70a6718
Update plugin versions
Apr 28, 2014
956331b
Add plugin to verify that the test coverage meet our expectation
Apr 28, 2014
c8e24ed
Clean up the code
Apr 28, 2014
23ff55b
Clean up the code
Apr 28, 2014
cece58e
Add unit test for the Assert class
Apr 28, 2014
2a43ac6
Add a reference (impl) to the implementation from the script engine
Apr 29, 2014
be2e7c8
Clean up and add more unit tests
Apr 29, 2014
412ce2e
Move resource classes to the io module
Apr 29, 2014
eafd284
Clean up
Apr 29, 2014
1b611ef
Add @Vertex and @Edge marker annotations
Apr 29, 2014
9b1e892
Only build master branch
KristianKarl Apr 30, 2014
7948e6b
Update annotations
Apr 30, 2014
0d756f8
Update license
Apr 30, 2014
b14ca8d
Refactor
May 6, 2014
daf1e15
Handel BLOCKED keyword
May 8, 2014
e16e6a3
Merge branch 'master' of https://github.com/nilols/GraphWalker
May 8, 2014
ff02d12
Update README.md
Jun 29, 2014
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
14 changes: 14 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,22 @@
.project
.settings/

# Intellij stuff #
##################
*.iml
*.ipr
*.iws
.idea/

# Build and unit tests stuff #
#############################
logs/
target/
work/
amps-standalone/
*/dependency-reduced-pom.xml

# Mac stuff #
#############
.DS_Store

19 changes: 19 additions & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
language: java
jdk:
- openjdk7

# whitelist
branches:
only:
- master

env:
global:
- secure: "Si+FksmD04Qev09hkYqWYN4rYQderrvMt6/kZBTgEek/v4Bd8QVCcbkZemYQCLnfhm94fNJDVrvpbrZhkeSWhCXKnnsYMH9oaxQWSd4aUI55V9QAseVAWMod5d2TSD7kTIo1owV5xh9LHTLmwnv4v6WmV3dSHSQc0zQh09dFC/M="
- secure: "IVcJyf13GCwLkpYKqygwTH9f3EG1YiqdmXWPCt5d9DXKKLjbSq/MFQ/nwdgfgfJAsgrSXN0I+6fIf8/INtI4YcKTpzAblXdeAkWdVrD4xpRSC7TpEHdEGMWEBtSWzJy8b92F2cxCXuk/QPDK4d8/QuelkFD9C9IztmgSqq7fQQg="

before_install:
- sudo apt-get update -qq

install:
mvn -q clean install -DskipTests=true
124 changes: 88 additions & 36 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,46 +1,98 @@
# GraphWalker

GraphWalker is a Model-Based Testing tool. It parses models [finite-state machines] which are designed
using the yEd, http://www.yworks.com/en/products_yed_about.html, and generates test sequences.
The tool generates offline and more importanly, online test sequences from Finite State Machines and
Extended Finite State Machines.
See also: http://graphwalker.org

The main features of GraphWalker are:

### No UML ###

GraphWalker's own ruleset in conjunction with GraphML, is easier to get started with than UML. As testers, we do not need all functionality that UML has to offer.

###No exit/stop points ###

The idea behind this, is that we want long, unpredictable test sequences. We do not want to walk the same path every time we execute a test. We want variation, spiced with randomness. This will create a better 'test coverage' of the system under test.
The way to tell GraphWalker to stop generating test sequences are done by means of Stop Criterias, passed as arguments to the tool.
# <strong>Deprecated</strong>, all development is now @ https://github.com/graphwalker

### Online ###

It supports online test sequence generation. Using the online mode, the tool is capable of testing non-deterministic systems. In essence, this means that the path walked through the model is decided runtime, during the actual test execution. This is very helpful if your test execution tool needs to communicate with the model during the test.

### Event-driven ###

GraphWalker supports the possibility to switch model caused by an event. For example, let's say we have a model that executes the navigation of the GUI of a mobile phone. At any point in that execution, an incoming call will be such an event that will switch from navigating the GUI, to a model that handles the call.

## Reporting Issues

https://github.com/KristianKarl/GraphWalker/issues

## Build

mvn assembly:assembly

## Test

mvn test
# GraphWalker

## Examples and Help
[![Build Status](https://travis-ci.org/nilols/GraphWalker.png)](https://travis-ci.org/nilols/GraphWalker)

GraphWalker is a Model-Based Testing tool. It parses models and generates test sequences.

## Table of Contents
1\. [Modules](#modules)
1\.1 [graphwalker-core](#graphwalker-core)
1\.2 [graphwalker-maven-plugin](#graphwalker-maven-plugin)
1\.3 [graphwalker-jenkins-plugin](#graphwalker-jenkins-plugin)
1\.4 [graphwalker-example](#graphwalker-example)
2\. [Example](#example)
2\.1 [pom.xml](#example-pom-xml)
2\.2 [Example.java](#example-example-java)
3\. [License](#license)

<a name="modules"></a>
## 1\. Modules
<a name="graphwalker-core"></a>
### 1\.1 graphwalker-core
Contains the GraphWalker implementation

<a name="graphwalker-maven-plugin"></a>
### 1\.2 graphwalker-maven-plugin

<a name="graphwalker-jenkins-plugin"></a>
### 1\.3 graphwalker-jenkins-plugin

<a name="graphwalker-example"></a>
### 1\.4 graphwalker-example
Showcase the GraphWalker project

```sh
mvn graphwalker:test
```

<a name="example"></a>
## 2\. Example

<a name="example-pom-xml"></a>
### 2\.1 pom.xml
Defines the dependencies needed to implement the model and the plugin needed to execution the model. A model can use actions and guards of any JSR 223 engine, but we need to add the dependency for the script engine.

```xml
...
<dependencies>
<dependency>
<groupId>org.graphwalker</groupId>
<artifactId>graphwalker-core</artifactId>
<version>3.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>groovy</groupId>
<artifactId>grovvy-all</artifactId>
<version>1.1-rc-1</version>
</dependency>
</dependencies>
...
<build>
<plugins>
<plugin>
<groupId>org.graphwalker</groupId>
<artifactId>graphwalker-maven-plugin</artifactId>
<version>3.0-SNAPSHOT</version>
</plugin>
</plugins>
</build>
...
```

<a name="example-example-java"></a>
### 2\.2 Example.java
Implements all the vertices and edges defined by the model, in this case the Example.graphml. Through the annotation we can define a stop condition that differs from the default one, if we create a class that implements the StopCondition interface we can tell GraphWalker to use that implementation through the stopCondition parameter in the @GraphWalker annotation.

```java
...
import my.package.MyStopCondition;
...
@GraphWalker(id = "MyExample", model = "models/Example.graphml", stopCondition = MyStopCondition.class)
public class Example {
...
```

<a name="license"></a>
## 3\. License

http://graphwalker.org/license/

http://graphwalker.org/documentation/

## License

http://graphwalker.org/license/
3 changes: 3 additions & 0 deletions graphwalker-cli/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# ignore temporary OpenOffice.org files
doc/.~lock.*

Binary file added graphwalker-cli/doc/CLI.odt
Binary file not shown.
64 changes: 64 additions & 0 deletions graphwalker-cli/pom.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

<modelVersion>4.0.0</modelVersion>

<parent>
<groupId>org.graphwalker</groupId>
<artifactId>graphwalker</artifactId>
<version>3.0-BETA-SNAPSHOT</version>
</parent>

<artifactId>graphwalker-cli</artifactId>
<name>GraphWalker Command Line Interface</name>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>1.7.1</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<transformers>
<transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
<mainClass>org.graphwalker.cli.CLI</mainClass>
</transformer>
</transformers>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>

<dependencies>
<dependency>
<groupId>org.graphwalker</groupId>
<artifactId>graphwalker-core</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.graphwalker</groupId>
<artifactId>graphwalker-io</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>com.beust</groupId>
<artifactId>jcommander</artifactId>
<version>1.35</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<scope>test</scope>
</dependency>
</dependencies>

</project>
Loading