Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Ambiguous use of block type "B" & declaring netin, netout ports #16

Closed
ERnsTL opened this issue Aug 9, 2018 · 8 comments
Closed

Ambiguous use of block type "B" & declaring netin, netout ports #16

ERnsTL opened this issue Aug 9, 2018 · 8 comments

Comments

@ERnsTL
Copy link

ERnsTL commented Aug 9, 2018

Greetings, in the .drw files generated by DrawFBP, there is a type information for each block. There are multiple types:

const TypeBlock = "B" // normal component
const TypeIIP = "I"
const TypeEnclosure = "O"  // just for presentation purposes, has .IsSubnet = false
const TypeSubnet = "B"     // reference to actual subnet, has .IsSubnet = true
const TypeExtPortIn = "B"  //TODO type "B" gets reused here...how to discern these? corresponds to INPORT = network inport in .fbp
const TypeExtPortOut = "B" //TODO type "B" gets reused here...how to discern these? corresponds to OUTPORT = network outport in .fbp
const TypeExtPortOI = "B"  //TODO type "B" gets reused here...how to discern these?
const TypeLegend = "L"
const TypeFile = "F"
const TypePerson = "P"
const TypeReport = "R"

As given by the comments, the block type "B" gets reused for multiple block types. How are network-level input and output ports declared in the diagram using the .drw XML format?

Meaning, what is the equivalent of the .fbp form, where network-wide ports are declared using INPORT=... and OUTPORT=...?

INPORT=filter.IN:NETIN
filter(bin/filter-records) OUT -> IN copy(bin/copy)
'OUT1' -> ARGS copy
OUTPORT=copy.OUT1:NETOUT

This declares a network-wide input port NETIN leading into filter.IN, further into the copy component, and from copy.OUT1 into the network-wide output port NETOUT.

If they are not already differentiatable / discernable using some other means than the block type, please make these network-wide input, output and input-output ports discernable / differentiatable, for example using block types NI, NO, NIO for network in, network out, network in-out respectively.

@ERnsTL ERnsTL changed the title Ambiguous use of block type "B" Ambiguous use of block type "B" & declaring netin, netout ports Aug 9, 2018
@jpaulm
Copy link
Owner

jpaulm commented Aug 11, 2018

This seems to be related to issue #18 - I am starting to address them now. May also be related to #15... Will label this release 2.14.2.

I also note that the Maven version is back-level. I hope to have release 2.14.2 available in a couple of days, both in Github, and on Maven... Apologies!

PS You don't seem to have shared any information about FlowD on the Google Group - https://groups.google.com/forum/#!forum/flow-based-programming - are you considering it? TIA

@ERnsTL
Copy link
Author

ERnsTL commented Aug 11, 2018

Greetings Paul, no problem and thanks for addressing this - then the .drw format can be used for defining subnets with their network in/out/IO ports as well.

An announcement on the FBP Google group is planned for the near future - I wrote you an email about that to your @rogers and @gmail.com addresses (not knowing which is current).

@jpaulm
Copy link
Owner

jpaulm commented Aug 15, 2018

With the v2.14.2 corrections, the types for External Ports are 'C', 'D' and 'E'.

PS Both email addresses are good - the rogers one forwards to gmail.

Best regards,

@ERnsTL
Copy link
Author

ERnsTL commented Aug 16, 2018

Regarding feedback on external ports legend: The new one is:

"ExtPorts: In", "... Out", "... Out/In"

That's totally fine!

@ERnsTL
Copy link
Author

ERnsTL commented Aug 16, 2018

Regarding this block type:

static public class Types {
		[...]
		static String UP = "Z";
}

What is it being used for? Or is this an obsolete type?

In the bottom of the DrawFBP interface, where one can choose the block type, in the very bottom right, there is a button labeled "up", but it is greyed out resp. deactivated.

@jpaulm
Copy link
Owner

jpaulm commented Aug 16, 2018

Well spotted! This is obsolete - I guess I forgot to remove it!

Sounds like your jar file is back level... If you download the latest jar file in https://github.com/jpaulm/drawfbp/releases (v2.14.2), you should see a rectangle showing 'Go to Directory' - I think it works...!

@ERnsTL
Copy link
Author

ERnsTL commented Aug 16, 2018

OK, upgraded ;-) Attaching the .jar to the Github release is the most direct way for getting the release file anyway.

The "Go To Directory" button in the bottom right works like the "open file"-functionality for me.

Just updated an example FBP network with external in and out ports. The symbols look nice! The new block types are also as expected now (C, D, E) and it is easy to discern them now when parsing the .drw file programatically.

I think this issue can be closed then!

@jpaulm
Copy link
Owner

jpaulm commented Aug 18, 2018

Closed with v2.14.2

@jpaulm jpaulm closed this as completed Aug 18, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants