diff --git a/li.strolch.website/www.strolch.li/api.html b/li.strolch.website/www.strolch.li/api.html index af9d67a79..33b335246 100644 --- a/li.strolch.website/www.strolch.li/api.html +++ b/li.strolch.website/www.strolch.li/api.html @@ -77,7 +77,7 @@ number of Parameters on it. Accessing these objects is always done by their IDs. Strolch root elements are always stored in the respective ElementMaps in their Strolch realm. Thus accessing a certain parameter from a Resource would look like this:

-
+        
 try (StrolchTransaction tx = openTx(realmName)) {
   Resource resource = tx.getResourceBy("TestType", "MyTestResource");
   DateParameter dateP = resource.getParameter("@bag01", "@param6");
@@ -86,7 +86,7 @@ try (StrolchTransaction tx = openTx(realmName)) {
 }
XML Presentation of Strolch's top level elements of Resources: -
+        
 <!-- Resource instance -->
 <Resource Id="MyTestResource" Name="Test Name" Type="TestType">
   <ParameterBag Id="@bag01" Name="Test Bag" Type="TestBag">
@@ -217,7 +217,7 @@ try (StrolchTransaction tx = openTx(realmName)) {
 
         

Strolch Realms are also responsible for opening Transactions, as these are bound to the persistence layer configured for this realm. At runtime, a realm is then accessed from the ComponentContainer:

-
+        
 ComponentContainer container = getAgent().getContainer();
 StrolchRealm realm = container.getRealm(StrolchConstants.DEFAULT_REALM);
 try(StrolchTransaction tx = realm.openTx()) {
@@ -244,7 +244,7 @@ try(StrolchTransaction tx = realm.openTx()) {
             lock the relevant Strolch elements before execution.

A typical Service and Command implementation would look as follows:

-
+        
 public class SetParameterService extends AbstractService<SetParameterArg, ServiceResult> {
 
   public static final long serialVersionUID = 1L;
@@ -304,7 +304,7 @@ public class SetParameterService extends AbstractService<SetParameterArg, Ser
 }
                 
-
+        
 public class SetParameterCommand extends Command {
 
   // input fields
@@ -440,16 +440,6 @@ public class SetParameterCommand extends Command {
 
         

Meta projects

    -
  • li.strolch.dev - -

    To quickly get started developing Strolch, this projects provides scripts to checkout all the - relevant projects and implements a Maven module so that building this projects builds all Strolch - projects.

    -
  • -
  • li.strolch.parent - -

    A Maven parent project for the Strolch projects to synchronize the maven project structure

    -
  • li.strolch.bom

    This bill of material is a Maven project which, when imported in one's own Strolch project, pulls in @@ -480,6 +470,14 @@ public class SetParameterCommand extends Command {

    A tutorial application which showcases how to setup Strolch as a standalone Java Webapp which can be deployed to a servlet container e.g. Apache Tomcat 8.

  • +
  • strolch_minimal + +

    A minimal project to get started with strolch.

    +
  • +
  • strolch_minimal_rest + +

    A minimal project to get started using REST with Strolch.

    +

Development

diff --git a/li.strolch.website/www.strolch.li/blog.html b/li.strolch.website/www.strolch.li/blog.html index a0c1c4b84..f681f1f54 100644 --- a/li.strolch.website/www.strolch.li/blog.html +++ b/li.strolch.website/www.strolch.li/blog.html @@ -184,24 +184,22 @@ Resource objects representing machines, human resources, etc., and Activity/Action hierarchies defining a workflow.

-

With the latest couple of commits to Strolch we have now added Activities and a basic - planning of Actions onto Resources. Activities have an - ordered list of IActivityElement which allows creating an arbitrary deep tree structure - of Activity and Action elements.

+

With the latest couple of commits to Strolch we have now added Activities and a basic planning of + Actions onto Resources. Activities have an ordered list of IActivityElement which + allows creating an arbitrary deep tree structure of Activity and Action elements.

-

Action objects have a list of IValueChange objects which define the start, - end and further value changes over time on a referenced Resource. Thus planning an - Activity is done by iterating the Activity hierarchy and for every Action - selecting a relevant Resource and then then applying the changes of the - Action on to the referenced TimeState on the Resource.

+

Action objects have a list of IValueChange objects which define the start, end and + further value changes over time on a referenced Resource. Thus planning an Activity is done by + iterating the Activity hierarchy and for every Action selecting a relevant Resource and then then + applying the changes of the Action on to the referenced TimeState on the Resource.

-

This implementation is currently very simple as it ignores all constraints which a - Resource might have. In further development we shall implement a Violation - model so that UIs can be built to visualize the over-use of Resources.

+

This implementation is currently very simple as it ignores all constraints which a Resource might + have. In further development we shall implement a Violation model so that UIs can be + built to visualize the over-use of Resources.

In even further steps we would then start implementing algorithms to not just apply the changes onto - a Resource, but to actually search the Resource for time slots when the - value changes would not violate any constraints applied to the resource.

+ a Resource, but to actually search the Resource for time slots when the value changes would not + violate any constraints applied to the resource.

We are very much looking forward to these new features. Stay tuned for your updates - even though they do take their time to arrive =).

diff --git a/li.strolch.website/www.strolch.li/development.html b/li.strolch.website/www.strolch.li/development.html index 044bae83b..bcbcad396 100644 --- a/li.strolch.website/www.strolch.li/development.html +++ b/li.strolch.website/www.strolch.li/development.html @@ -1,107 +1,114 @@ - - - - - - - - + + + + + + + + - Strolch: Development + Strolch: Development - - + + - - + + - - - - -
diff --git a/li.strolch.website/www.strolch.li/files/strolch_app.tar.gz b/li.strolch.website/www.strolch.li/files/strolch_app.tar.gz deleted file mode 100644 index f84f9bde6..000000000 Binary files a/li.strolch.website/www.strolch.li/files/strolch_app.tar.gz and /dev/null differ diff --git a/li.strolch.website/www.strolch.li/files/strolch_webapp.tar.gz b/li.strolch.website/www.strolch.li/files/strolch_webapp.tar.gz deleted file mode 100644 index 7badf1cc2..000000000 Binary files a/li.strolch.website/www.strolch.li/files/strolch_webapp.tar.gz and /dev/null differ diff --git a/li.strolch.website/www.strolch.li/index.html b/li.strolch.website/www.strolch.li/index.html index 97b1e109a..34b250b56 100644 --- a/li.strolch.website/www.strolch.li/index.html +++ b/li.strolch.website/www.strolch.li/index.html @@ -62,9 +62,9 @@ used to implement applications with multiple users/customers for instance in SaaS environments.

The parameterized data model consists of three top level objects, Resources, Orders and Activities. These - objects can have any number of ParameterBags which in turn can have any number of Parameters on them. - This allows for a very dynamic modelling of data structures including modification at run time. Multiple - ready to use Parameter types are already implemented which handle the primitive types in Java including + objects can have any number of ParameterBags which in turn can have any number of Parameters on them. This + allows for a very dynamic modelling of data structures including modification at run time. Multiple ready to + use Parameter types are already implemented which handle the primitive types in Java including ListParameters for collections of these primitive types.

One of the main features of the Strolch agent, is that persistence is handled transparently and the user must @@ -137,20 +137,32 @@

Strolch strives to use as few external dependencies as possible, so that the Strolch runtime is not bloated unnecessarily. The following list of Strolch dependencies is a summary and was created using mvn - dependency:tree on the li.strolch.dev project on the 2014-09-18.

+ dependency:tree on the strolch_minimal project on the 2016-09-16.

Basic runtime dependencies

    -
  • org.postgresql:postgresql:jar:9.3-1100-jdbc41:compile -

    Implements the PostgreSQL Persistence layer used by li.strolch.persistence.postgresql

  • commons-cli:commons-cli:jar:1.2:compile

    Implements the command line parameter parsing when starting from a main class

  • -
  • junit:junit:jar:4.11:compile -

    Testing facilities

  • -
  • org.slf4j:slf4j-api:jar:1.7.2:compile -

    Logging facilities API

  • + +
  • org.postgresql:postgresql:jar:9.4.1208.jre7:compile +

    Implements the PostgreSQL Persistence layer used by li.strolch.persistence.postgresql

  • +
  • com.zaxxer:HikariCP:jar:2.3.6:compile +

    Implements connection pooling for JDBC access

  • + +
  • com.google.code.gson:gson:jar:2.3.1:compile +

    Used to transform to JSON

  • + +
  • javax.activation:activation:jar:1.1:compile +

    Used when sending e-mails

  • +
  • javax.mail:mail:jar:1.5.0-b01:compile +

    Used when sending e-mails

  • +
  • log4j:log4j:jar:1.2.17:runtime -

    Logging facilities Implementation

  • +

    Used for logging

    +
  • org.slf4j:slf4j-api:jar:1.7.2:compile +

    Used for logging

  • +
  • org.slf4j:slf4j-log4j12:jar:1.7.2:runtime +

    Used for logging

@@ -159,7 +171,7 @@

If you want to access Strolch using the RESTful API, then we got you covered - but sadly RESTful service development requires quite a few extra dependencies:

    -
  • com.google.guava:guava:jar:14.0.1:compile
  • +
  • com.github.petitparser.java-petitparser:petitparser-core:jar:2.0.2:compile
  • javax.annotation:javax.annotation-api:jar:1.2:compile
  • javax.servlet:javax.servlet-api:jar:3.0.1:provided
  • javax.validation:validation-api:jar:1.1.0.Final:compile
  • @@ -168,20 +180,21 @@
  • org.eclipse.persistence:org.eclipse.persistence.asm:jar:2.5.0:compile
  • org.eclipse.persistence:org.eclipse.persistence.core:jar:2.5.0:compile
  • org.eclipse.persistence:org.eclipse.persistence.moxy:jar:2.5.0:compile
  • -
  • org.glassfish.hk2.external:asm-all-repackaged:jar:2.2.0-b21:compile
  • -
  • org.glassfish.hk2.external:cglib:jar:2.2.0-b21:compile
  • -
  • org.glassfish.hk2.external:javax.inject:jar:2.2.0-b21:compile
  • -
  • org.glassfish.hk2:hk2-api:jar:2.2.0-b21:compile
  • -
  • org.glassfish.hk2:hk2-locator:jar:2.2.0-b21:compile
  • -
  • org.glassfish.hk2:hk2-utils:jar:2.2.0-b21:compile
  • +
  • org.glassfish.hk2.external:aopalliance-repackaged:jar:2.3.0-b05:compile
  • +
  • org.glassfish.hk2.external:javax.inject:jar:2.3.0-b05:compile
  • +
  • org.glassfish.hk2:hk2-api:jar:2.3.0-b05:compile
  • +
  • org.glassfish.hk2:hk2-locator:jar:2.3.0-b05:compile
  • +
  • org.glassfish.hk2:hk2-utils:jar:2.3.0-b05:compile
  • org.glassfish.hk2:osgi-resource-locator:jar:1.0.1:compile
  • -
  • org.glassfish.jersey.containers:jersey-container-servlet-core:jar:2.5.1:compile
  • -
  • org.glassfish.jersey.containers:jersey-container-servlet:jar:2.5.1:compile
  • -
  • org.glassfish.jersey.core:jersey-client:jar:2.5.1:compile
  • -
  • org.glassfish.jersey.core:jersey-common:jar:2.5.1:compile
  • -
  • org.glassfish.jersey.core:jersey-server:jar:2.5.1:compile
  • -
  • org.glassfish.jersey.ext:jersey-entity-filtering:jar:2.5.1:compile
  • -
  • org.glassfish.jersey.media:jersey-media-moxy:jar:2.5.1:compile
  • +
  • org.glassfish.jersey.bundles.repackaged:jersey-guava:jar:2.11:compile
  • +
  • org.glassfish.jersey.containers:jersey-container-servlet-core:jar:2.11:compile
  • +
  • org.glassfish.jersey.containers:jersey-container-servlet:jar:2.11:compile
  • +
  • org.glassfish.jersey.core:jersey-client:jar:2.11:compile
  • +
  • org.glassfish.jersey.core:jersey-common:jar:2.11:compile
  • +
  • org.glassfish.jersey.core:jersey-server:jar:2.11:compile
  • +
  • org.glassfish.jersey.ext:jersey-entity-filtering:jar:2.11:compile
  • +
  • org.glassfish.jersey.media:jersey-media-moxy:jar:2.11:compile
  • +
  • org.javassist:javassist:jar:3.18.1-GA:compile

API

diff --git a/li.strolch.website/www.strolch.li/template.html b/li.strolch.website/www.strolch.li/template.html deleted file mode 100644 index b1b658d90..000000000 --- a/li.strolch.website/www.strolch.li/template.html +++ /dev/null @@ -1,85 +0,0 @@ - - - - - - - - - - - - Strolch: XXXXX - - - - - - - - - - - - - -
- -
-

Bla bla

-

This page describes ...

- - - -
- - - -
- - - - - - - - - - - - -