@Jordan: Do you have a script which pushes multi-module mvn projects artifacts to sonatype?
1. done
--
You received this message because you are subscribed to the Google Groups "vertigo" group.
To unsubscribe from this group and stop receiving emails from it, send an email to vertx-vertig...@googlegroups.com.
To post to this group, send email to vertx-...@googlegroups.com.
Visit this group at http://groups.google.com/group/vertx-vertigo.
To view this discussion on the web visit https://groups.google.com/d/msgid/vertx-vertigo/c5b2beb3-ce3c-4c16-af86-a841c2138f79%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
--
You received this message because you are subscribed to the Google Groups "vertigo" group.
To unsubscribe from this group and stop receiving emails from it, send an email to vertx-vertig...@googlegroups.com.
To post to this group, send email to vertx-...@googlegroups.com.
Visit this group at http://groups.google.com/group/vertx-vertigo.
To view this discussion on the web visit https://groups.google.com/d/msgid/vertx-vertigo/18e30d77-7a08-4764-82de-a3b9f0a1725b%40googlegroups.com.
SMC seems incredibly interesting, and forking it was a great idea :-) FSM is such a perfect application for Vertigo, I think we can move more and more towards making it a core concept with fault tolerance and features revolving around the concepts of FSM.
Am Sonntag, 9. November 2014 14:47:03 UTC+1 schrieb Jordan Halterman:SMC seems incredibly interesting, and forking it was a great idea :-) FSM is such a perfect application for Vertigo, I think we can move more and more towards making it a core concept with fault tolerance and features revolving around the concepts of FSM.I think it should be an additional concept making it easy to develop FSM-components, but not every vertigo component is a FSM - e.g. a database client.
My core contribution to vertigo is to make vertigo easy to use for high-level designed applications. Similar to the UI which allows to model networks, the SMC allows to model deterministic components. If vertigo 1.0, UI and SMC is put together we have everything to model flow-based / process-based applications, support the implementation of flow-components via FSM and execute it as a distributed application on a cluster with strong QoS. Up to this point we have a nice pipeline from development to operation (good for continuous integration). What is missing is to seamlessly integrate a powerful web framework (like yoke) - than we should be able to provide a very useful tool to implement process-oriented web-scale apps.
--
You received this message because you are subscribed to the Google Groups "vertigo" group.
To unsubscribe from this group and stop receiving emails from it, send an email to vertx-vertig...@googlegroups.com.
To post to this group, send email to vertx-...@googlegroups.com.
Visit this group at http://groups.google.com/group/vertx-vertigo.
To view this discussion on the web visit https://groups.google.com/d/msgid/vertx-vertigo/ac46e6c0-d0d8-4f28-a477-d20d27058c61%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "vertigo" group.
To unsubscribe from this group and stop receiving emails from it, send an email to vertx-vertig...@googlegroups.com.
To post to this group, send email to vertx-...@googlegroups.com.
Visit this group at http://groups.google.com/group/vertx-vertigo.
To view this discussion on the web visit https://groups.google.com/d/msgid/vertx-vertigo/ac46e6c0-d0d8-4f28-a477-d20d27058c61%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "vertigo" group.
To unsubscribe from this group and stop receiving emails from it, send an email to vertx-vertig...@googlegroups.com.
To post to this group, send email to vertx-...@googlegroups.com.
Visit this group at http://groups.google.com/group/vertx-vertigo.
To view this discussion on the web visit https://groups.google.com/d/msgid/vertx-vertigo/18e30d77-7a08-4764-82de-a3b9f0a1725b%40googlegroups.com.
Thanks Jordan for your comments! I will answer each of your comment inline :-)
I am back online after I got a "programmer"-disease and my doc had ordered me not to use a keyboard for a week so that my arm can regenerate. Now everything is fine :-)
Am Montag, 10. November 2014 02:14:33 UTC+1 schrieb Jordan Halterman:--I should add: I mentioned typed ports in relation to configurations because ports are now typed via the Java compiler (generics), but I'm wondering if it would be useful to add type support to ports in component configuration files. This could allow us to do configuration time type checking, i.e. throw an exception if an int port is connected to a String port. I'm always in favor of strong typing wherever possible. Perhaps types can be optional (supporting an Object port as the default).2. done--
3. done
See https://github.com/orolle/SMC. Binaries should be available on maven central soon. I wait for feedback from Sonatype.
3.a SMC code generation for vertigo / vertx is a little bit complicated. I will delay this task after the vertigo 1.0 api is fixed as I do not like to re-write the code gen on every api change ;-)
4. Change this task to: Re-write the PoC with SMC code generation. This task gives me a better perspective how SMC is used in conjunction with the network model and how yoke can be integrated. This will prove the ability of SMC to model component behavior and implement the model on a lower level.
PS: Beside the model-abstraction of SMC, it might increase the performance of vertigo components as finite state machines are typically fast and failure-resilient. This should be tested / benchmarked.
You received this message because you are subscribed to the Google Groups "vertigo" group.
To unsubscribe from this group and stop receiving emails from it, send an email to vertx-vertig...@googlegroups.com.
To post to this group, send email to vertx-...@googlegroups.com.
Visit this group at http://groups.google.com/group/vertx-vertigo.
To view this discussion on the web visit https://groups.google.com/d/msgid/vertx-vertigo/18e30d77-7a08-4764-82de-a3b9f0a1725b%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
You received this message because you are subscribed to the Google Groups "vertigo" group.
To unsubscribe from this group and stop receiving emails from it, send an email to vertx-vertig...@googlegroups.com.
To post to this group, send email to vertx-...@googlegroups.com.
Visit this group at http://groups.google.com/group/vertx-vertigo.
To view this discussion on the web visit https://groups.google.com/d/msgid/vertx-vertigo/8fe8eeac-5c87-4597-94a9-e015ddda0b1d%40googlegroups.com.
Don't forget to stretch before each time you take the field! :-)
If you have never been wounded programming, you're not doing it right!
--
You received this message because you are subscribed to the Google Groups "vertigo" group.
To unsubscribe from this group and stop receiving emails from it, send an email to vertx-vertig...@googlegroups.com.
To post to this group, send email to vertx-...@googlegroups.com.
Visit this group at http://groups.google.com/group/vertx-vertigo.
To view this discussion on the web visit https://groups.google.com/d/msgid/vertx-vertigo/a9e77f54-5f21-485e-bb63-d28d0cc0c314%40googlegroups.com.
@VertexCodeGen
public interface IExample extends SbpmBehavior {
// Transition Events, would be received on inport("onEvent1
") and routed to FSM-controller
public void onEvent1(JsonObject event1);
// Transition guards to prevent FSM from switching in wrong state; called by controller
public boolean isEvent1Ok(JsonObject event1);
// do Methods are called by controller if a Transition has been done
public void doSomethingAfterTransition();
}
public class ConcreteExampleComponent extends ComponentVerticle {
IExample stateful = new ImplIExample();
ExampleController fsm = new ExampleController(stateful);
public void start(){
inport("onEvent1").onMessage((JsonObject o) -> fsm.onEvent1(o));
}
}
public class ConcreteExampleComponent extends ComponentVerticle {
IExample stateful = new WebIExample();
ExampleController fsm = new ExampleController(stateful);
WebStateRenderer render = new
WebStateRenderer(
stateful,
fsm
);
public void start(){
inport("onEvent1").onMessage((JsonObject o) -> fsm.onEvent1(o));
inport("http").onMessage((HttpRequest req) ->
render
.handle(req));
// processes http request
}
}
Another idea I've played around with is integrating a web framework into Vertigo. This is obviously one of the areas that is sorely lacking, and I'm willing to make any changes necessary to accommodate making it easier to feed information into a network or expose a network via an HTTP interface.
My core contribution to vertigo is to make vertigo easy to use for high-level designed applications. Similar to the UI which allows to model networks, the SMC allows to model deterministic components. If vertigo 1.0, UI and SMC is put together we have everything to model flow-based / process-based applications, support the implementation of flow-components via FSM and execute it as a distributed application on a cluster with strong QoS. Up to this point we have a nice pipeline from development to operation (good for continuous integration). What is missing is to seamlessly integrate a powerful web framework (like yoke) - than we should be able to provide a very useful tool to implement process-oriented web-scale apps.
I have done a lot of research on Akka and have been interested in a couple of concepts there. I added a ComponentReference interface to the current API which allows you to communicate directly with a component's input/output ports. So, you can deploy a network and send messages to or receive messages from its components. This I think is especially important for testing.
One thing that I did integrate from Akka, though, is its excellent configuration library. I'm quite fond of the syntax and think it will make it much easier to define networks and components in configuration. It allows you to include other configuration files and even reference other configuration values. I am sort of leaning towards trying to use this syntax to provide metadata for various elements of the Vertigo application, including cluster, networks, components, state machines, and other services.
My only concern is that there are too many ways to define a network. Configuration file, configuration class, and fluent DSL.