Menu
- General Information
- Architecture :
- Services & Processes
- CookBooks
- Deployment
- Bundled Applications
- Source Code :
- Third-Party Setup :
- Polytech Staff Area :
This tools aims to describe the global jSeduite infrastructure. The first usage is to automatically generate diagrams from the description. Others application can use this representation to automate the generation of bundles, …
The underlying engine is the Prolog inference engine, which provides a very efficient backend for this kind of job.
The architecture description file is named jSeduite.pl, in the $JSEDUITE_HOME/architecture/description folder.
You'll describe the jSeduite architecture by expressing a set of logical facts. The facts syntax is really simple, and the only thing you have to know is you can't use a name which starts by an upper case character.
The following list contains all available facts, and the corresponding semantic :
library(X) ⇔ X is a librarytable(X) ⇔ X is a table inside the jSeduite databaseview(X) ⇔ X is a view inside the jSeduite database (table includes view) webservice(X) ⇔ X is defined as a black box web service inside jSeduiteorchestration(X) ⇔ X is an orchestration (webservice includes orchestration)depends(X,Y) ⇔ library(X), library(Y), X uses a method defined in Yreferences(A,B) ⇔ table(A), table(B) and A defines a reference to Bprovides(X,O) ⇔ webservice(X) and X provides an operation named Ouses(X,Y) ⇔ webservice(X), table(Y) and X retrieve data from Yloads(X,Y) ⇔ webservice(X), library(Y), X use functionalities from YusesAsPartner(X,Y) ⇔ orchestration(X), webservice(Y), Y is a partner of X
The arch_gen.sh shell script can generate graphviz diagrams from this representation.
out.png: ./arch_gen.shf.png: ./arch_gen.sh f.png./arch_gen.sh orchestrations.png orch_arch./arch_gen.sh webservices.png orch_arch./arch_gen.sh cachedFeedReader.png “dgraph([cachedFeedReader])”
The arch_gen.php script bind prolog to php and allow dynamic generation of dependency graph.
You'll just have to retrieve the raw script from here: arch_gen.php.
www user MUST be able to write data inside the folder you're using.
Then, open the script and specialize it for your own web server, by editing the three following constants:
define("SWIPL","/opt/local/bin/swipl"); define("NEATO","/sw/bin/neato"); define("FONT_PATH","/System/Library/Fonts");
SWIPL ⇒ path of the SWI prolog interpreterNEATO ⇒ path of the neato commandFONT_PATH ⇒ path where usual fonts are stored on your system
Assuming you've deploy the script inside a folder available at the URL http://server.domain/arch_gen.php:
http://server.domain/arch_gen.php?target=entity<div align="center" > <img src="http://server.domain/arch_gen.php?target=entity" /> </div>
<html>
<div align="center" >
<img src="http://server.domain/arch_gen.php?target=entity" />
</div>
</html>
http://www.jseduite.org/webarch_gen/arch_gen.php?target=