JBoss Developer : All Content - Scribble DevelopmentAll Content in Scribble Developmenthttps://developer.jboss.org/community/scribble/devJive Engage2011-04-12T21:47:58Z2011-04-12T21:47:58ZenImplementing the new choice syntaxOlivier Pernet/people/pernetodo-not-reply@jboss.com2011-04-13T08:45:06Z2011-04-12T21:47:58Z<!-- [DocumentBodyStart:25b7b6f5-f4ea-4888-b1df-d00f0e59f38f] --><div class="jive-rendered-content"><p>I think we've made enough progress on the theory side with Nobuko that implementation of the new choice can start.</p><p>Gary, how do you want to do this? Maybe you can get started with the grammar changes, etc. and I can do projection after that?</p><p>You might want to add the "introduces" keyword while you're changing the grammar, too.</p></div><!-- [DocumentBodyEnd:25b7b6f5-f4ea-4888-b1df-d00f0e59f38f] --><img src='/beacon?t=1503033823146' />2011-04-12T21:47:58Z6 years 4 months ago30How do you pronounce SPR?Matthew Rawlings/people/rawlingsdo-not-reply@jboss.com2011-03-27T17:56:11Z2011-03-27T13:54:09Z<!-- [DocumentBodyStart:f8a94651-538a-4edf-8602-95c4f3fb323a] --><div class="jive-rendered-content"><p>What does SPR, the protocol file extension represent? How should it be pronounced?</p><p style="min-height: 8pt; padding: 0px;">&#160;</p><p>On OSX the file extension associates with "Unix Executable File", on Windows it associates with FoxPro amongst other things. Is this IANA registered as an Internet Media Type?</p></div><!-- [DocumentBodyEnd:f8a94651-538a-4edf-8602-95c4f3fb323a] -->2011-03-27T13:54:09Z6 years 5 months ago10Moving code to gitGary Brown/people/objectiserdo-not-reply@jboss.com2011-03-25T16:02:19Z2011-03-01T00:09:03Z<!-- [DocumentBodyStart:455ee7ae-f2ff-4c49-ad24-9ae54cf553c1] --><div class="jive-rendered-content"><p>A number of jboss.org projects have moved from svn to git (generally hosted at github), due to the benefits that can be obtained from using a distributed version control system.</p><p style="min-height: 8pt; padding: 0px;">&#160;</p><p>Its possible this could benefit the Scribble project, in that it could more easily allow different research groups to maintain their own forks, without having to necessarily (1) provide changes through patches, or (2) sign a contributor agreement and be given commit rights to the svn repository.</p><p style="min-height: 8pt; padding: 0px;">&#160;</p><p>As the work of these separate groups mature, it can be pushed back to the master repository to become part of the main distribution.</p><p style="min-height: 8pt; padding: 0px;">&#160;</p><p>I don't have a great deal of experience using git at the moment, but recently migrated the Savara (version 2) codebase to github. So this change does not necessarily have to be considered at the moment - but as Scribble will integrate into Savara and also as part of JBoss Tools, and both of these projects are now hosted on github, it may be a good idea.</p><p style="min-height: 8pt; padding: 0px;">&#160;</p><p>One issue is the tooling for git is not as well established as svn - however the merging capabilities are apparently significantly better.</p><p style="min-height: 8pt; padding: 0px;">&#160;</p><p>Thoughts?</p></div><!-- [DocumentBodyEnd:455ee7ae-f2ff-4c49-ad24-9ae54cf553c1] -->2011-03-01T00:09:03Z6 years 5 months ago50Model simplification by removing current conformance checking implementationGary Brown/people/objectiserdo-not-reply@jboss.com2011-02-22T18:07:46Z2011-02-21T21:32:28Z<!-- [DocumentBodyStart:8ef8927a-0733-41bf-a6e0-a34f653f6347] --><div class="jive-rendered-content"><p>The current trunk has a conformance checking algorithm from the original scribble prototype, which hasn't proved to be a general enough solution. It was useful for demonstrating the potential of using conformance checking, between various different representations (e.g. CDL and BPEL), within an Eclipse environment.</p><p style="min-height: 8pt; padding: 0px;">&#160;</p><p>Therefore I intend to remove the current implementation, and some of its impact on the protocol model, to help simplify the model.</p><p style="min-height: 8pt; padding: 0px;">&#160;</p><p>For example, SinglePathBehaviour and MultiPathBehaviour were introduced when scribble was expected to be a multi-level language - and possibly extensible - to allow additional single and multi-path constructs to be added, and for the conformance checking algorithm to be able to cater for them. Now that the protocol notation is fixed, it is not necessary to represent such generic concepts. This also means that some of the properties associated with these classes can be removed from the derived types.</p><p style="min-height: 8pt; padding: 0px;">&#160;</p><p>Any objections, let me know.</p></div><!-- [DocumentBodyEnd:8ef8927a-0733-41bf-a6e0-a34f653f6347] -->2011-02-21T21:32:28Z6 years 6 months ago20Coding conventionsOlivier Pernet/people/pernetodo-not-reply@jboss.com2011-02-18T16:08:15Z2011-02-18T15:36:48Z<!-- [DocumentBodyStart:e4694c41-3b84-49f1-aef7-8d3e18603ad6] --><div class="jive-rendered-content"><p>I've noticed you don't use an import statement for java.util, and instead repeat the full names of classes/interfaces like java.util.List.</p><p>Do you mind if I change that on the classes I'm editing?</p><p style="min-height: 8pt; padding: 0px;">&#160;</p><p>Also, why do you use parenthesises around returned expressions in return statements?</p></div><!-- [DocumentBodyEnd:e4694c41-3b84-49f1-aef7-8d3e18603ad6] -->2011-02-18T15:36:48Z6 years 6 months ago20Code duplication in ProtocolProjectorTest / running tests in an IDEOlivier Pernet/people/pernetodo-not-reply@jboss.com2011-02-18T15:25:19Z2011-02-13T18:18:41Z<!-- [DocumentBodyStart:758a9081-834e-4c5a-990c-aba7df6c6c22] --><div class="jive-rendered-content"><p>I'm adding a few more tests to the CTK, and I've noticed there is a lot of code duplication in ProtocolProjectorTest. Is this on purpose? I know some people prefer making test code as obvious as possible, even if that means a lot of copy-paste.</p><p style="min-height: 8pt; padding: 0px;">&#160;</p><p>Another related question: how do you run the tests in an IDE? They're looking for the Scribble files using System.getSystemResourceAsStream, which doesn't work in my IDE. I've been changing the code to a FileInputStream while I run the tests, but I always need to change it back to make the tests work in Maven.</p></div><!-- [DocumentBodyEnd:758a9081-834e-4c5a-990c-aba7df6c6c22] -->2011-02-13T18:18:41Z6 years 6 months ago140What is the rationale for having many model-related methods throw exceptions on error, and return null instead?Olivier Pernet/people/pernetodo-not-reply@jboss.com2011-02-15T22:48:12Z2011-02-15T19:27:18Z<!-- [DocumentBodyStart:f79fd483-cc64-4f97-815a-be1808b69b51] --><div class="jive-rendered-content"><p>Examples include ProtocolParser.parse and ProtocolProjector.project.</p></div><!-- [DocumentBodyEnd:f79fd483-cc64-4f97-815a-be1808b69b51] -->2011-02-15T19:27:18Z6 years 6 months ago40Felix jar pulled as a dependencyOlivier Pernet/people/pernetodo-not-reply@jboss.com2011-02-10T15:36:07Z2011-02-10T15:20:36Z<!-- [DocumentBodyStart:1c9eaf2a-0673-4094-ba2a-fa749a348c31] --><div class="jive-rendered-content"><p>Is this normal? Why does Scribble depend on Felix and not just the OSGi API?</p></div><!-- [DocumentBodyEnd:1c9eaf2a-0673-4094-ba2a-fa749a348c31] -->2011-02-10T15:20:36Z6 years 6 months ago10ProtocolModelProjectorRule change in rev 435Olivier Pernet/people/pernetodo-not-reply@jboss.com2011-02-10T13:51:28Z2011-02-09T02:06:53Z<!-- [DocumentBodyStart:1d17ce45-8064-427e-a58c-534998e7f1ac] --><div class="jive-rendered-content"><p>I just noticed that a recent change to the project method in ProtocolModelProjectorRule makes it ignore the model parameter for projection (except from pulling imports from it), and instead projects the protocol attached to the Role instance given as a parameter.</p><p style="min-height: 8pt; padding: 0px;">&#160;</p><p>What is the reason for the change? I find it quite confusing, and possibly incorrect (what if the Role instance comes from a different protocol? Then we end up projecting another, different model). </p><p>It also makes it harder to use project() programmatically, as this forbids callers from just creating a Role instance and passing it in.</p><p style="min-height: 8pt; padding: 0px;">&#160;</p><p>Olivier</p></div><!-- [DocumentBodyEnd:1d17ce45-8064-427e-a58c-534998e7f1ac] -->2011-02-09T02:06:53Z6 years 6 months ago60Build system, tests, docs, and model class changeOlivier Pernet/people/pernetodo-not-reply@jboss.com2011-02-03T21:52:30Z2011-02-02T16:38:56Z<!-- [DocumentBodyStart:e8256509-67ab-404a-b0d4-14a8769275e0] --><div class="jive-rendered-content"><blockquote class="jive-quote"><p><br/><span>On Wed, Feb 2, 2011 at 3:48 PM, Olivier Pernet &lt;</span><a class="jive-link-email-small" href="mailto:omp08@doc.ic.ac.uk" rel="nofollow" target="_blank">omp08@doc.ic.ac.uk</a><span>&gt; wrote:</span></p><p>&gt;</p><p>&gt; Hi Gary,</p><p>&gt;</p><p>&gt; I've finished the first "draft" of my Scala extension, which you can</p><p><span>&gt; see at </span><a class="jive-link-external-small" href="http://code.google.com/p/session-scala/" rel="nofollow" target="_blank">http://code.google.com/p/session-scala/</a><span> if you're interested.</span></p><p style="min-height: 8pt; padding: 0px;">&#160;</p><p>Thats good news - would like to take a look, its just finding the time at</p><p>the moment. However let me know your thoughts on how we could like you</p><p>project in on the scribble project website, as it would be good to capture</p><p>related projects. </p><p style="min-height: 8pt; padding: 0px;">&#160;</p><p>&gt; As I worked on this I was using an older working copy of Scribble,</p><p>&gt; with the equals implementation for When which you said was breaking</p><p>&gt; one of the tests.</p><p>&gt;</p><p>&gt; I'd like to fix that if possible, so that I can use the Scribble trunk</p><p>&gt; again and make it easier for others to build my code.</p><p>&gt; I just updated my copy and tried building Scribble, with the equals</p><p>&gt; implementation: it seems to pass all tests now, even with the change.</p><p>&gt; Can I commit it?</p><p style="min-height: 8pt; padding: 0px;">&#160;</p><p> If it passes the tests then should be ok to commit. However have you used</p><p> the qa profile, as this runs more tests:</p><p style="min-height: 8pt; padding: 0px;">&#160;</p><p> mvn clean install -Pqa</p><p style="min-height: 8pt; padding: 0px;">&#160;</p><p>&gt;</p><p>&gt; I see that there's a developer guide in the sources, but I don't know</p><p>&gt; how to compile it. Which maven target is it?</p><p>&gt;&#160; </p><p style="min-height: 8pt; padding: 0px;">&#160;</p><p> The docs are built in another profile, so to do a complete test and docs</p><p> build, you use:</p><p style="min-height: 8pt; padding: 0px;">&#160;</p><p> mvn clean install -Pqa,docs</p></blockquote><p style="min-height: 8pt; padding: 0px;">&#160;</p><p>I'm having problems with the docs:</p><p style="min-height: 8pt; padding: 0px;">&#160;</p><p style="min-height: 8pt; padding: 0px;">&#160;</p><!--[CodeBlockStart:6fbfa4bf-1181-4986-9731-4b716d598c5d][excluded]--><pre class="plain" name="code">[ERROR]&#160;&#160; The project org.scribble.docs:userguide:2.0.0-SNAPSHOT (/Users/omp08/Code/scribble/docs/userguide/pom.xml) has 1 error
[ERROR]&#160;&#160;&#160;&#160; Unresolveable build extension: Plugin org.jboss.maven.plugins:maven-jdocbook-plugin:2.2.3 or one of its dependencies could not be resolved: Unable to get dependency information for org.apache.xmlgraphics:xmlgraphics-commons:jar:fop-svn-r784789: Failed to retrieve POM for org.apache.xmlgraphics:xmlgraphics-commons:jar:fop-svn-r784789: Failure to resolve org/apache/xmlgraphics/xmlgraphics-commons/fop-svn-r784789/xmlgraphics-commons-fop-svn-r784789.pom from https://repository.jboss.org/nexus/content/groups/public/ was cached in the local repository. Resolution will not be reattempted until the update interval of jboss-public-repository-group has elapsed or updates are forced. Original error: Error transferring file: Connection reset
&#160; org.apache.xmlgraphics:xmlgraphics-commons:pom:fop-svn-r784789
from the specified remote repositories:
&#160; jboss-public-repository-group (https://repository.jboss.org/nexus/content/groups/public/, releases=true, snapshots=true),
&#160; central (http://repo1.maven.org/maven2, releases=true, snapshots=false)
</pre><!--[CodeBlockEnd:6fbfa4bf-1181-4986-9731-4b716d598c5d]--><div style="display:none;"></div><p style="min-height: 8pt; padding: 0px;">&#160;</p><blockquote class="jive-quote"><p style="min-height: 8pt; padding: 0px;">&#160;</p><p>&gt;</p><p>&gt; Nobuko asked me to have a look at the projection implementation to see</p><p>&gt; if it matches the theory. Do you have any particular things you'd like</p><p>&gt; me to look at there?</p><p style="min-height: 8pt; padding: 0px;">&#160;</p><p> The implementation is in bundles/org.scribble.protocol.projection - I think</p><p> it covers most use cases, but would be worth a review. Would be good to add</p><p> further test cases (in the org.scribble.protocol.ctk bundle) to outline any</p><p> scenarios not handled, and then if you have the time, extend the</p><p> implementation to handle them.</p></blockquote></div><!-- [DocumentBodyEnd:e8256509-67ab-404a-b0d4-14a8769275e0] -->2011-02-02T16:38:56Z6 years 6 months ago20