├── .classpath
├── .gitignore
├── .project
├── .settings
├── gradle
│ ├── org.springsource.ide.eclipse.gradle.core.import.prefs
│ ├── org.springsource.ide.eclipse.gradle.core.prefs
│ └── org.springsource.ide.eclipse.gradle.refresh.prefs
├── org.eclipse.jdt.core.prefs
└── org.eclipse.m2e.core.prefs
├── README.md
├── build.gradle
├── build
├── distributions
│ ├── javafbp-4.1.1.tar
│ ├── javafbp-4.1.1.zip
│ ├── javafbp-4.1.10.tar
│ ├── javafbp-4.1.10.zip
│ ├── javafbp-4.1.11.tar
│ ├── javafbp-4.1.11.zip
│ ├── javafbp-4.1.12.tar
│ ├── javafbp-4.1.12.zip
│ ├── javafbp-4.1.13.tar
│ ├── javafbp-4.1.13.zip
│ ├── javafbp-4.1.14.tar
│ ├── javafbp-4.1.14.zip
│ ├── javafbp-4.1.2.tar
│ ├── javafbp-4.1.2.zip
│ ├── javafbp-4.1.3.tar
│ ├── javafbp-4.1.3.zip
│ ├── javafbp-4.1.4.tar
│ ├── javafbp-4.1.4.zip
│ ├── javafbp-4.1.5.tar
│ ├── javafbp-4.1.5.zip
│ ├── javafbp-4.1.6.tar
│ ├── javafbp-4.1.6.zip
│ ├── javafbp-4.1.7.tar
│ ├── javafbp-4.1.7.zip
│ ├── javafbp-4.1.8.tar
│ ├── javafbp-4.1.8.zip
│ ├── javafbp-4.1.9.tar
│ └── javafbp-4.1.9.zip
├── libs
│ ├── javafbp-4.0.1-javadoc.jar.asc
│ ├── javafbp-4.0.1-sources.jar
│ ├── javafbp-4.0.1-sources.jar.asc
│ ├── javafbp-4.0.1.jar.asc
│ ├── javafbp-4.1.0-javadoc.jar
│ ├── javafbp-4.1.0-javadoc.jar.asc
│ ├── javafbp-4.1.0-sources.jar
│ ├── javafbp-4.1.0-sources.jar.asc
│ ├── javafbp-4.1.0.jar
│ ├── javafbp-4.1.0.jar.asc
│ ├── javafbp-4.1.1-javadoc.jar
│ ├── javafbp-4.1.1-javadoc.jar.asc
│ ├── javafbp-4.1.1-sources.jar
│ ├── javafbp-4.1.1-sources.jar.asc
│ ├── javafbp-4.1.1.jar
│ ├── javafbp-4.1.1.jar.asc
│ ├── javafbp-4.1.10-javadoc.jar
│ ├── javafbp-4.1.10-javadoc.jar.asc
│ ├── javafbp-4.1.10-sources.jar
│ ├── javafbp-4.1.10-sources.jar.asc
│ ├── javafbp-4.1.10.jar
│ ├── javafbp-4.1.10.jar.asc
│ ├── javafbp-4.1.11-javadoc.jar
│ ├── javafbp-4.1.11-javadoc.jar.asc
│ ├── javafbp-4.1.11-sources.jar
│ ├── javafbp-4.1.11-sources.jar.asc
│ ├── javafbp-4.1.11.jar
│ ├── javafbp-4.1.11.jar.asc
│ ├── javafbp-4.1.12-javadoc.jar
│ ├── javafbp-4.1.12-javadoc.jar.asc
│ ├── javafbp-4.1.12-sources.jar
│ ├── javafbp-4.1.12-sources.jar.asc
│ ├── javafbp-4.1.12.jar
│ ├── javafbp-4.1.12.jar.asc
│ ├── javafbp-4.1.13-javadoc.jar
│ ├── javafbp-4.1.13-javadoc.jar.asc
│ ├── javafbp-4.1.13-sources.jar
│ ├── javafbp-4.1.13-sources.jar.asc
│ ├── javafbp-4.1.13.jar
│ ├── javafbp-4.1.13.jar.asc
│ ├── javafbp-4.1.14-javadoc.jar
│ ├── javafbp-4.1.14-sources.jar
│ ├── javafbp-4.1.14.jar
│ ├── javafbp-4.1.2-javadoc.jar
│ ├── javafbp-4.1.2-javadoc.jar.asc
│ ├── javafbp-4.1.2-sources.jar
│ ├── javafbp-4.1.2-sources.jar.asc
│ ├── javafbp-4.1.2.jar
│ ├── javafbp-4.1.2.jar.asc
│ ├── javafbp-4.1.3-javadoc.jar
│ ├── javafbp-4.1.3-javadoc.jar.asc
│ ├── javafbp-4.1.3-sources.jar
│ ├── javafbp-4.1.3-sources.jar.asc
│ ├── javafbp-4.1.3.jar
│ ├── javafbp-4.1.3.jar.asc
│ ├── javafbp-4.1.4-javadoc.jar
│ ├── javafbp-4.1.4-javadoc.jar.asc
│ ├── javafbp-4.1.4-sources.jar
│ ├── javafbp-4.1.4-sources.jar.asc
│ ├── javafbp-4.1.4.jar
│ ├── javafbp-4.1.4.jar.asc
│ ├── javafbp-4.1.5-javadoc.jar
│ ├── javafbp-4.1.5-javadoc.jar.asc
│ ├── javafbp-4.1.5-sources.jar
│ ├── javafbp-4.1.5-sources.jar.asc
│ ├── javafbp-4.1.5.jar
│ ├── javafbp-4.1.5.jar.asc
│ ├── javafbp-4.1.6-javadoc.jar
│ ├── javafbp-4.1.6-javadoc.jar.asc
│ ├── javafbp-4.1.6-sources.jar
│ ├── javafbp-4.1.6-sources.jar.asc
│ ├── javafbp-4.1.6.jar
│ ├── javafbp-4.1.6.jar.asc
│ ├── javafbp-4.1.7-javadoc.jar
│ ├── javafbp-4.1.7-javadoc.jar.asc
│ ├── javafbp-4.1.7-sources.jar
│ ├── javafbp-4.1.7-sources.jar.asc
│ ├── javafbp-4.1.7.jar
│ ├── javafbp-4.1.7.jar.asc
│ ├── javafbp-4.1.8-javadoc.jar
│ ├── javafbp-4.1.8-javadoc.jar.asc
│ ├── javafbp-4.1.8-sources.jar
│ ├── javafbp-4.1.8-sources.jar.asc
│ ├── javafbp-4.1.8.jar
│ ├── javafbp-4.1.8.jar.asc
│ ├── javafbp-4.1.9-javadoc.jar
│ ├── javafbp-4.1.9-javadoc.jar.asc
│ ├── javafbp-4.1.9-sources.jar
│ ├── javafbp-4.1.9-sources.jar.asc
│ ├── javafbp-4.1.9.jar
│ └── javafbp-4.1.9.jar.asc
├── poms
│ ├── pom-default.xml
│ └── pom-default.xml.asc
├── publications
│ └── mavenJava
│ │ ├── module.json
│ │ ├── module.json.asc
│ │ ├── pom-default.xml
│ │ └── pom-default.xml.asc
└── scripts
│ ├── javafbp
│ └── javafbp.bat
├── docs
├── MergeandSort.png
├── compListPart.png
└── style.css
├── gradle-app.setting
├── gradle
└── wrapper
│ ├── gradle-wrapper.jar
│ └── gradle-wrapper.properties
├── gradlew
├── gradlew.bat
├── lgpl-3.0.txt
├── package.json
├── pom.xml
├── renovate.json
├── src
└── main
│ ├── java
│ └── com
│ │ └── jpaulmorrison
│ │ ├── fbp
│ │ ├── core
│ │ │ ├── components
│ │ │ │ ├── audio
│ │ │ │ │ ├── GenSamples.java
│ │ │ │ │ ├── JingleBells.java
│ │ │ │ │ ├── JingleBells2.java
│ │ │ │ │ ├── MixerInput.java
│ │ │ │ │ ├── SoundMixer.java
│ │ │ │ │ └── Text2IntArray.java
│ │ │ │ ├── httpurl
│ │ │ │ │ └── LoadURL.java
│ │ │ │ ├── io
│ │ │ │ │ ├── EnhancedWriteFile.java
│ │ │ │ │ ├── ListFiles.java
│ │ │ │ │ ├── ReadEmails.java
│ │ │ │ │ ├── ReadFile.java
│ │ │ │ │ ├── ReadFromSocket.java
│ │ │ │ │ ├── WriteFile.java
│ │ │ │ │ └── WriteToSocket.java
│ │ │ │ ├── jdbc
│ │ │ │ │ ├── ReadJDBC.java
│ │ │ │ │ └── WriteJDBC.java
│ │ │ │ ├── misc
│ │ │ │ │ ├── Collate.java
│ │ │ │ │ ├── Counter.java
│ │ │ │ │ ├── GenerateTestData.java
│ │ │ │ │ ├── WriteObjectsToConsole.java
│ │ │ │ │ └── WriteToConsole.java
│ │ │ │ ├── parsexml
│ │ │ │ │ ├── Comment.java
│ │ │ │ │ ├── Control.java
│ │ │ │ │ ├── End.java
│ │ │ │ │ ├── ParseXML.java
│ │ │ │ │ ├── Solo.java
│ │ │ │ │ ├── Start.java
│ │ │ │ │ └── Text.java
│ │ │ │ ├── routing
│ │ │ │ │ ├── ConcatStreams.java
│ │ │ │ │ ├── Copy.java
│ │ │ │ │ ├── Crash.java
│ │ │ │ │ ├── Discard.java
│ │ │ │ │ ├── Gate.java
│ │ │ │ │ ├── Heartbeat.java
│ │ │ │ │ ├── Inject.java
│ │ │ │ │ ├── Kick.java
│ │ │ │ │ ├── KickWD.java
│ │ │ │ │ ├── LoadBalance.java
│ │ │ │ │ ├── Output.java
│ │ │ │ │ ├── Passthru.java
│ │ │ │ │ ├── RRMerge.java
│ │ │ │ │ ├── RandomDelay.java
│ │ │ │ │ ├── SelNthItem.java
│ │ │ │ │ ├── Sort.java
│ │ │ │ │ ├── Splitter1.java
│ │ │ │ │ └── SubstreamSensitiveMerge.java
│ │ │ │ ├── swing
│ │ │ │ │ └── ShowText.java
│ │ │ │ └── text
│ │ │ │ │ ├── Affix.java
│ │ │ │ │ ├── ConcatString.java
│ │ │ │ │ ├── DeCompose.java
│ │ │ │ │ ├── DedupeSuccessive.java
│ │ │ │ │ ├── DuplicateString.java
│ │ │ │ │ ├── FieldLimits.java
│ │ │ │ │ ├── LineToWords.java
│ │ │ │ │ ├── LowerCase.java
│ │ │ │ │ ├── Obscure.java
│ │ │ │ │ ├── PadFields.java
│ │ │ │ │ ├── Prefix.java
│ │ │ │ │ ├── ReCompose.java
│ │ │ │ │ ├── RegExReplace.java
│ │ │ │ │ ├── ReplString.java
│ │ │ │ │ ├── ReplaceRegExp.java
│ │ │ │ │ ├── ReplaceString.java
│ │ │ │ │ ├── StartsWith.java
│ │ │ │ │ ├── StripPunct.java
│ │ │ │ │ └── WordsToLine.java
│ │ │ └── engine
│ │ │ │ ├── Chain.java
│ │ │ │ ├── Comparator.java
│ │ │ │ ├── Component.java
│ │ │ │ ├── ComponentDescription.java
│ │ │ │ ├── ComponentException.java
│ │ │ │ ├── ConnArray.java
│ │ │ │ ├── Connection.java
│ │ │ │ ├── DispIPCounts.java
│ │ │ │ ├── DummyMain.java
│ │ │ │ ├── FlowError.java
│ │ │ │ ├── InPort.java
│ │ │ │ ├── InPorts.java
│ │ │ │ ├── InitializationConnection.java
│ │ │ │ ├── InputPort.java
│ │ │ │ ├── License.txt
│ │ │ │ ├── MustRun.java
│ │ │ │ ├── Network.java
│ │ │ │ ├── NullConnection.java
│ │ │ │ ├── NullOutputPort.java
│ │ │ │ ├── OutArray.java
│ │ │ │ ├── OutPort.java
│ │ │ │ ├── OutPorts.java
│ │ │ │ ├── OutputPort.java
│ │ │ │ ├── Packet.java
│ │ │ │ ├── Port.java
│ │ │ │ ├── Priority.java
│ │ │ │ ├── SelfStarting.java
│ │ │ │ ├── SubIn.java
│ │ │ │ ├── SubInSS.java
│ │ │ │ ├── SubNet.java
│ │ │ │ ├── SubOI.java
│ │ │ │ ├── SubOut.java
│ │ │ │ ├── SubOutSS.java
│ │ │ │ ├── TimeoutHandler.java
│ │ │ │ ├── VersionAndTimestamp.java
│ │ │ │ └── lgpl-3.0.txt
│ │ └── resourcekit
│ │ │ ├── examples
│ │ │ ├── components
│ │ │ │ ├── BuildBlob.java
│ │ │ │ ├── ChainOps.java
│ │ │ │ ├── CheckBallooning.java
│ │ │ │ ├── CheckForDupNames.java
│ │ │ │ ├── CheckSequenceWithinSubstreams.java
│ │ │ │ ├── FileReadLines.java
│ │ │ │ ├── GenSS.java
│ │ │ │ ├── GenSubStreams.java
│ │ │ │ ├── GenerateFixedSizeArray.java
│ │ │ │ ├── GenerateOptionalArray.java
│ │ │ │ ├── GenerateSlowly.java
│ │ │ │ ├── GenerateWordCounts.java
│ │ │ │ ├── Interpret.java
│ │ │ │ ├── JFilter.java
│ │ │ │ ├── LDIFScan.java
│ │ │ │ ├── RGQ.java
│ │ │ │ ├── SlowPass.java
│ │ │ │ ├── TestStack.java
│ │ │ │ └── WriteReadConsole.java
│ │ │ ├── networks
│ │ │ │ ├── Copy1.java
│ │ │ │ ├── Copy2.java
│ │ │ │ ├── CopyFileToCons.java
│ │ │ │ ├── Deadlock.java
│ │ │ │ ├── FileCopy.java
│ │ │ │ ├── FileViewer.java
│ │ │ │ ├── InfQueueAsMain.java
│ │ │ │ ├── MergeSortDrop.java
│ │ │ │ ├── MergeandSort.java
│ │ │ │ ├── NoDeadlock.java
│ │ │ │ ├── PlayTune.java
│ │ │ │ ├── ReadHTML.java
│ │ │ │ ├── RemoveGedcomQuotes.java
│ │ │ │ ├── ScanDir.java
│ │ │ │ ├── SelRecipes.java
│ │ │ │ ├── SriramsTest.java
│ │ │ │ ├── SubnetD.java
│ │ │ │ ├── SubnetX.java
│ │ │ │ ├── TPX.java
│ │ │ │ ├── TSS.java
│ │ │ │ ├── Telegram.java
│ │ │ │ ├── TestArrayPorts.java
│ │ │ │ ├── TestChainsNet.java
│ │ │ │ ├── TestCounter.java
│ │ │ │ ├── TestDeadlockDetection.java
│ │ │ │ ├── TestDropOldest.java
│ │ │ │ ├── TestFixedSizeArray.java
│ │ │ │ ├── TestIPCounting.java
│ │ │ │ ├── TestInfiniteQueue.java
│ │ │ │ ├── TestLoadBalanceWithSubstreams.java
│ │ │ │ ├── TestLoadBalancer.java
│ │ │ │ ├── TestLocks.java
│ │ │ │ ├── TestMixedInput.java
│ │ │ │ ├── TestNestedSubstreams.java
│ │ │ │ ├── TestNullOutputPort.java
│ │ │ │ ├── TestOptionalArray.java
│ │ │ │ ├── TestSelNthItem.java
│ │ │ │ ├── TestSockets.java
│ │ │ │ ├── TestTune.java
│ │ │ │ ├── TestTune2.java
│ │ │ │ ├── TextMerge.java
│ │ │ │ ├── TimingTest.java
│ │ │ │ ├── TryReplicate.java
│ │ │ │ ├── Update.java
│ │ │ │ ├── VolumeTest.java
│ │ │ │ ├── VolumeTest2.java
│ │ │ │ ├── VolumeTest3.java
│ │ │ │ ├── WordCount.java
│ │ │ │ ├── WriteReadInterpret.java
│ │ │ │ └── WriteToSocketFromJava.java
│ │ │ └── subnets
│ │ │ │ └── InfiniteQueue.java
│ │ │ ├── experimental
│ │ │ ├── components
│ │ │ │ ├── Balloon.java
│ │ │ │ ├── BigBufferWriteFile.java
│ │ │ │ ├── ShowURL.java
│ │ │ │ └── TabulaRasa.java
│ │ │ └── networks
│ │ │ │ ├── CopyTR.java
│ │ │ │ ├── TestBalloon.java
│ │ │ │ └── TryBrowser.java
│ │ │ └── templates
│ │ │ └── FBPComponentTemplate.java
│ │ └── utils
│ │ └── BabelParser2.java
│ └── resources
│ ├── LICENSE
│ └── testdata
│ ├── 21lines.txt
│ ├── contacts.ldif
│ ├── dfile
│ ├── emptyfile.txt
│ ├── input.txt
│ ├── mfile
│ ├── persons.csv
│ ├── readme.txt
│ ├── recipes.csv
│ ├── script_test.js
│ ├── temp
│ ├── testdata.txt
│ └── tune.txt
└── testdata
├── 21lines.txt
├── contacts.ldif
├── dfile
├── emptyfile.txt
├── input.txt
├── mfile
├── persons.csv
├── readme.txt
├── recipes.csv
├── script_test.js
├── temp
├── testdata.txt
└── tune.txt
/.classpath:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
2 | hs_err_pid*
3 |
4 | *-fulltrace.txt
5 | output
6 | temp.data
7 |
8 | # Gradle
9 | .gradle
10 |
11 | # Maven packages/etc
12 | target/
13 |
14 |
15 | build/tmp
16 | build/resources
17 | build/classes
18 | build/dependency-cache
19 | build/ivy.xml
20 |
21 | build/docs/javadoc
22 |
23 | # Eclipse project
24 | bin
25 |
26 | # IDEA project
27 | .idea/
28 | *.iml
29 |
30 | # System's crap
31 | Thumbs.db
32 | .DS_Store
33 |
34 |
--------------------------------------------------------------------------------
/.project:
--------------------------------------------------------------------------------
1 |
2 |
3 | javafbp
4 | Java Implementation of "Classical" Flow-Based Programming
5 |
6 |
7 |
8 |
9 | org.eclipse.jdt.core.javabuilder
10 |
11 |
12 |
13 |
14 | org.eclipse.m2e.core.maven2Builder
15 |
16 |
17 |
18 |
19 |
20 | org.eclipse.m2e.core.maven2Nature
21 | org.springsource.ide.eclipse.gradle.core.nature
22 | org.eclipse.jdt.core.javanature
23 |
24 |
25 |
--------------------------------------------------------------------------------
/.settings/gradle/org.springsource.ide.eclipse.gradle.core.import.prefs:
--------------------------------------------------------------------------------
1 | #org.springsource.ide.eclipse.gradle.core.preferences.GradleImportPreferences
2 | #Wed Jul 27 09:56:21 EDT 2016
3 | addResourceFilters=true
4 | afterTasks=afterEclipseImport;
5 | beforeTasks=cleanEclipse;eclipse;
6 | enableAfterTasks=true
7 | enableBeforeTasks=true
8 | enableDependendencyManagement=true
9 | projects=;
10 |
--------------------------------------------------------------------------------
/.settings/gradle/org.springsource.ide.eclipse.gradle.core.prefs:
--------------------------------------------------------------------------------
1 | #org.springsource.ide.eclipse.gradle.core.preferences.GradleProjectPreferences
2 | #Sun Jun 19 23:10:43 EDT 2016
3 | build.family.org.gradle.tooling.model.eclipse.HierarchicalEclipseProject=;
4 | org.springsource.ide.eclipse.gradle.linkedresources=
5 | org.springsource.ide.eclipse.gradle.rootprojectloc=
6 |
--------------------------------------------------------------------------------
/.settings/gradle/org.springsource.ide.eclipse.gradle.refresh.prefs:
--------------------------------------------------------------------------------
1 | #org.springsource.ide.eclipse.gradle.core.actions.GradleRefreshPreferences
2 | #Wed Jul 27 09:56:22 EDT 2016
3 | addResourceFilters=true
4 | afterTasks=afterEclipseImport;
5 | beforeTasks=cleanEclipse;eclipse;
6 | enableAfterTasks=true
7 | enableBeforeTasks=true
8 | useHierarchicalNames=false
9 |
--------------------------------------------------------------------------------
/.settings/org.eclipse.jdt.core.prefs:
--------------------------------------------------------------------------------
1 | eclipse.preferences.version=1
2 | org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
3 | org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate
4 | org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
5 | org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
6 | org.eclipse.jdt.core.compiler.compliance=1.7
7 | org.eclipse.jdt.core.compiler.debug.lineNumber=generate
8 | org.eclipse.jdt.core.compiler.debug.localVariable=generate
9 | org.eclipse.jdt.core.compiler.debug.sourceFile=generate
10 | org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
11 | org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled
12 | org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
13 | org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
14 | org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning
15 | org.eclipse.jdt.core.compiler.release=disabled
16 | org.eclipse.jdt.core.compiler.source=1.7
17 |
--------------------------------------------------------------------------------
/.settings/org.eclipse.m2e.core.prefs:
--------------------------------------------------------------------------------
1 | activeProfiles=
2 | eclipse.preferences.version=1
3 | resolveWorkspaceProjects=true
4 | version=1
5 |
--------------------------------------------------------------------------------
/build/distributions/javafbp-4.1.1.tar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/distributions/javafbp-4.1.1.tar
--------------------------------------------------------------------------------
/build/distributions/javafbp-4.1.1.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/distributions/javafbp-4.1.1.zip
--------------------------------------------------------------------------------
/build/distributions/javafbp-4.1.10.tar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/distributions/javafbp-4.1.10.tar
--------------------------------------------------------------------------------
/build/distributions/javafbp-4.1.10.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/distributions/javafbp-4.1.10.zip
--------------------------------------------------------------------------------
/build/distributions/javafbp-4.1.11.tar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/distributions/javafbp-4.1.11.tar
--------------------------------------------------------------------------------
/build/distributions/javafbp-4.1.11.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/distributions/javafbp-4.1.11.zip
--------------------------------------------------------------------------------
/build/distributions/javafbp-4.1.12.tar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/distributions/javafbp-4.1.12.tar
--------------------------------------------------------------------------------
/build/distributions/javafbp-4.1.12.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/distributions/javafbp-4.1.12.zip
--------------------------------------------------------------------------------
/build/distributions/javafbp-4.1.13.tar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/distributions/javafbp-4.1.13.tar
--------------------------------------------------------------------------------
/build/distributions/javafbp-4.1.13.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/distributions/javafbp-4.1.13.zip
--------------------------------------------------------------------------------
/build/distributions/javafbp-4.1.14.tar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/distributions/javafbp-4.1.14.tar
--------------------------------------------------------------------------------
/build/distributions/javafbp-4.1.14.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/distributions/javafbp-4.1.14.zip
--------------------------------------------------------------------------------
/build/distributions/javafbp-4.1.2.tar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/distributions/javafbp-4.1.2.tar
--------------------------------------------------------------------------------
/build/distributions/javafbp-4.1.2.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/distributions/javafbp-4.1.2.zip
--------------------------------------------------------------------------------
/build/distributions/javafbp-4.1.3.tar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/distributions/javafbp-4.1.3.tar
--------------------------------------------------------------------------------
/build/distributions/javafbp-4.1.3.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/distributions/javafbp-4.1.3.zip
--------------------------------------------------------------------------------
/build/distributions/javafbp-4.1.4.tar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/distributions/javafbp-4.1.4.tar
--------------------------------------------------------------------------------
/build/distributions/javafbp-4.1.4.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/distributions/javafbp-4.1.4.zip
--------------------------------------------------------------------------------
/build/distributions/javafbp-4.1.5.tar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/distributions/javafbp-4.1.5.tar
--------------------------------------------------------------------------------
/build/distributions/javafbp-4.1.5.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/distributions/javafbp-4.1.5.zip
--------------------------------------------------------------------------------
/build/distributions/javafbp-4.1.6.tar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/distributions/javafbp-4.1.6.tar
--------------------------------------------------------------------------------
/build/distributions/javafbp-4.1.6.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/distributions/javafbp-4.1.6.zip
--------------------------------------------------------------------------------
/build/distributions/javafbp-4.1.7.tar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/distributions/javafbp-4.1.7.tar
--------------------------------------------------------------------------------
/build/distributions/javafbp-4.1.7.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/distributions/javafbp-4.1.7.zip
--------------------------------------------------------------------------------
/build/distributions/javafbp-4.1.8.tar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/distributions/javafbp-4.1.8.tar
--------------------------------------------------------------------------------
/build/distributions/javafbp-4.1.8.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/distributions/javafbp-4.1.8.zip
--------------------------------------------------------------------------------
/build/distributions/javafbp-4.1.9.tar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/distributions/javafbp-4.1.9.tar
--------------------------------------------------------------------------------
/build/distributions/javafbp-4.1.9.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/distributions/javafbp-4.1.9.zip
--------------------------------------------------------------------------------
/build/libs/javafbp-4.0.1-javadoc.jar.asc:
--------------------------------------------------------------------------------
1 | -----BEGIN PGP SIGNATURE-----
2 | Version: BCPG v1.51
3 |
4 | iQEcBAABAgAGBQJXrz/EAAoJEIoqalWqx6ke6zsH/jWE6ZDKgbMRP7EcgJCWqQ3U
5 | gcAn8thKpDFNZWHChRVrfICDgHIeTjhlWHaRfV4iDx5CqHDOifO33GKTuaT9m5X6
6 | NuVdc+2ahE0Yos3lWKMEG/1lX7iCyFMp6dQGaO9GjWIPsqcPfEN2f38H5utzkQLT
7 | hGzzdzpQHwWBvwdksFKAnDjS31pYKzCdkpdlNEhrqpIutdw0oE1PV/jo82UlADQe
8 | YJE2zCkjcExhyb3Bgy/4FgOT7u8SuhAwY4zIub1z8+Pf5T4t8fUoxLPKPNOPR7tT
9 | 7en7GenVkS9bOkuSyGiSpygcISIbpNu0tGtxF93XK8wsUtI7n/9TLfNojPHye0E=
10 | =b0to
11 | -----END PGP SIGNATURE-----
12 |
--------------------------------------------------------------------------------
/build/libs/javafbp-4.0.1-sources.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/libs/javafbp-4.0.1-sources.jar
--------------------------------------------------------------------------------
/build/libs/javafbp-4.0.1-sources.jar.asc:
--------------------------------------------------------------------------------
1 | -----BEGIN PGP SIGNATURE-----
2 | Version: BCPG v1.51
3 |
4 | iQEcBAABAgAGBQJXrz/EAAoJEIoqalWqx6keqwUIALBH5JcgroeHwQGUAaOZ8Z/C
5 | eYn0lk/e7qkde3q8xjx+Wf5tSywEfUtxoi9U/3AqFcyFqTygNWNTkDlFA9D6sMzN
6 | u7NzlkbUQH46OB7nFy653QXUcJ3aHQ6UURjPmTwO1ISEZief4BmI5iN+o0UL6DMN
7 | S/WThVgjDAszTNr2a9I2ehXFNi96GhaiZcwG6wQOycfWs+TyqnTW67wyp6g5VIC+
8 | fQxUVd/tHDN9MtmfEpSJTdT0VnUbx62fiULOGkSyjaWlOqeeX/RY5QBxE0XiwdnD
9 | VtfGNkZp2bbXMSvSub/pO99C4X0/c2wzFlP/ctNCm5CgauTckMs9jGAixqrJGos=
10 | =kKRU
11 | -----END PGP SIGNATURE-----
12 |
--------------------------------------------------------------------------------
/build/libs/javafbp-4.0.1.jar.asc:
--------------------------------------------------------------------------------
1 | -----BEGIN PGP SIGNATURE-----
2 | Version: BCPG v1.51
3 |
4 | iQEcBAABAgAGBQJXrz/EAAoJEIoqalWqx6keXCkH/jb/w3My2QUsPe0skocjMueR
5 | YTonKljSALtDNvvtafRWjGY7xFRRKbjjoaHuwGV2qpxgWWc1hhDWMTsrzaO619t+
6 | uGuQ5achDVKyqeMHYY/UEdW5JCQW5HgLrQFqmbHQUoe8SSB+Fx+TiRU8idGX1jY0
7 | ZYsRBpD1EYEYfCga04UnHlZA5eBdZDDVBi2nYiFMJTSd1V60CkfCANQ/b6kR5CE4
8 | aKFGPsU04Q8b712SaSVKfwy+FZzv6ifZ1PKNmp1aEHyy2JobSZUs+3csNt5LPm75
9 | tUvdTELE58xtl0cewkdO8SsTUo6STIHadVw9RzUBnJW7yDkTLAy0M2W119dKdLU=
10 | =j9+1
11 | -----END PGP SIGNATURE-----
12 |
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.0-javadoc.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/libs/javafbp-4.1.0-javadoc.jar
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.0-javadoc.jar.asc:
--------------------------------------------------------------------------------
1 | -----BEGIN PGP SIGNATURE-----
2 | Version: BCPG v1.51
3 |
4 | iQEcBAABAgAGBQJc0cYWAAoJEIoqalWqx6keAdkH/ixhpqIfE4giGxfUsw8f+QdT
5 | CNbbnx/+WMHH9OJyUX7v/JzMqV+1cehSa8DCewP+ni+hYykIkkmOK6blivccL6bu
6 | 8ga81PEnE+CLnpaL2aOW54D7UuQeT25Ac8Gwsu9W4yPKYHXOew4285cOFK0JExKU
7 | uzgxC1wW0W996v5d3w8K/4AJZZa56rEH4hbolyN7gdvne8rL9CJ1wRKmlZ0hWfgY
8 | a8AjRqBdls4Xt5nOkzSCaj8FZzp3O2m1JJSxQMaTr7xJopZmSfSzuvfWpU9NzJzz
9 | hqMN6GPMHuIpN2j0efDyaisdoueB4GxPUneTAYPzM9bYNjSbWBFCN6oW2/ybau4=
10 | =fJ6x
11 | -----END PGP SIGNATURE-----
12 |
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.0-sources.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/libs/javafbp-4.1.0-sources.jar
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.0-sources.jar.asc:
--------------------------------------------------------------------------------
1 | -----BEGIN PGP SIGNATURE-----
2 | Version: BCPG v1.51
3 |
4 | iQEcBAABAgAGBQJc3JqjAAoJEIoqalWqx6keMDcH/0kU/X00xuqcDqeAhG5F3kk9
5 | ly7+RpqE1J8mpJ8w0sn45Wqx9PsFo8pOVkzG0xQAUowhlQseY9RXm3qTuOBUGyF7
6 | KPYKL4hCqK/5oBt/Vh8bvWiOVH2N6QiFtwZYhN2mFr5ABY8saVHOPJq35crJUEGg
7 | bHLndKgngMtX7+RjlsL6PvsjmdiyqfBTRbQab+pLeuEXrA/8Wq98GjF6sc1EfcI/
8 | hW4xrd7tmirhF+e4pFQNGkVyGRqlAr0E+aHukUoGvzcAFLgCD6+tdwT+pczL9mK6
9 | 3FhIlVkdWfrgbCGpoNQOqkeZJ1PbVZzwpvt84zXspDwhefe2C3Bu1GKHWA8Ozeo=
10 | =+BUk
11 | -----END PGP SIGNATURE-----
12 |
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.0.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/libs/javafbp-4.1.0.jar
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.0.jar.asc:
--------------------------------------------------------------------------------
1 | -----BEGIN PGP SIGNATURE-----
2 | Version: BCPG v1.51
3 |
4 | iQEcBAABAgAGBQJc3JqjAAoJEIoqalWqx6keXHcH/2WOuzvIy0f2G+qiAAkJZrYh
5 | X6LTOh5lYauo9Mgd80JxzGoeSmpt5NqOaZmoz54bqVoZ80Mhqhjg2ymT5BTHO2N2
6 | h0n/zZsY1LsEmIEin91++1+jh+S4nCXDsk5FWwyGRQFg+Ixx8wDHCWVZRc6iDHsk
7 | Kg+KGzzRBBYMUBq55Hl2bFU3zI7T2pSrgMmFXQvUW5FT6K5dRCA5Q8RTwlWUhZVe
8 | jf0QlI9H311mi7Fl2bkXmxLqqUkSs2hddg6MuUXcL4jJqqY9kZUyJqzrOXjExUCF
9 | fSDQhliGLbkA25uwCPCASR/76v8gDG+V/GBS+JpbLiVUpupXpoxCTiYGYeiqSb4=
10 | =Ur6X
11 | -----END PGP SIGNATURE-----
12 |
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.1-javadoc.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/libs/javafbp-4.1.1-javadoc.jar
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.1-javadoc.jar.asc:
--------------------------------------------------------------------------------
1 | -----BEGIN PGP SIGNATURE-----
2 | Version: BCPG v1.64
3 |
4 | iQEcBAABCgAGBQJeWvV+AAoJEIoqalWqx6keJWgH/19OdrmabdcVEUVYboOTa2X1
5 | Cj31ZNofhfvIinQirFPzSdLCDekf6k5DVoAYKu+FlvjxuGo5lEs9XPiPoLGTzgN5
6 | o9rmKwlnaraXMSEdl+BGmhOPXKxYOhcE7DBKkh5Gp1OP6w/qT4/NeRywg9ARPvpt
7 | 45yUTBE8KR85ETs52M+O0JXHjn20wfIhl25UvYM5eQ4seD8aTi65Os7gI7XhKZ9C
8 | PeB7i/KrL0NoKFn0woTXH7mRvnMQ2jzw776AXx9MYyhrJTXxwWO3TFAMqYvUd+xf
9 | MZER+s/B2vAW1PtwC5NcgbnhsjbfSKmqIbo8jtE6+zRNyHZPdUAAEKL/Jv0MjkY=
10 | =f9/r
11 | -----END PGP SIGNATURE-----
12 |
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.1-sources.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/libs/javafbp-4.1.1-sources.jar
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.1-sources.jar.asc:
--------------------------------------------------------------------------------
1 | -----BEGIN PGP SIGNATURE-----
2 | Version: BCPG v1.64
3 |
4 | iQEcBAABCgAGBQJeWvV+AAoJEIoqalWqx6keHgkH/jKHUNC2rYjn+eW0unmxtMsu
5 | yDxyVglrSeq8UKP4zvpIjGl8HBao9ajQJJOX06l0f1SF/unIP+C+lsznBczFd1IY
6 | EfIPLMtwqEodDIMtnzqEYp60b6UNhlN2BRrTbsfDllRp0fwukgb3cYFv/CXuWife
7 | /yZoIFvs72pIUkLFqrUJuctRF/LeLueNmOAQpoBL98BMhVeot6rUDPOFigfm/cwg
8 | cdks5rKBhEqpDdMTm02CPsqW7geAUEBXpu4a2qDRMdXcLdndphILp6+BSV9BAXcl
9 | KrBeXIbxg754Z+R22AK9QNdGSjRKN/ch3TsoyYTbfbx9LEY3qneEGKJZXZRwfi8=
10 | =s7h/
11 | -----END PGP SIGNATURE-----
12 |
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.1.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/libs/javafbp-4.1.1.jar
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.1.jar.asc:
--------------------------------------------------------------------------------
1 | -----BEGIN PGP SIGNATURE-----
2 | Version: BCPG v1.64
3 |
4 | iQEcBAABCgAGBQJeWvV+AAoJEIoqalWqx6ketxoIAJiP0HKINcZRu8EdH1nAltSQ
5 | 8E2tEGmyAMQ0xsnIs6+3SH2NS4qhx8ugiVVdv1LlSaPK4rgdRK6/p9Jg4A/Q5Vfr
6 | d/mIooW5ARE6rvttavJBXXePdWLCCep/GJ6lptBmvGqbBL6W7nVOXQOX8l8nW9MM
7 | TwYVP76yJr7Q1GdHEUlGqk9JD93IQ7Igioo8v9Vo2Fi4lgiW9/ZsmRvCPxFf7TvT
8 | 2sYred2WGhTsvGdM6zw7C3VX006C3eRpyoYNnv4vtFR3zKJr/PlaDqczcdd2ub8P
9 | iM3moCnGO2zLglI84Aw5tiXswIIRBToXEX/c/N+qD6Uccx9yJEyQ69Yt0E94tjI=
10 | =5CfA
11 | -----END PGP SIGNATURE-----
12 |
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.10-javadoc.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/libs/javafbp-4.1.10-javadoc.jar
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.10-javadoc.jar.asc:
--------------------------------------------------------------------------------
1 | -----BEGIN PGP SIGNATURE-----
2 | Version: BCPG v1.64
3 |
4 | iQEcBAABCgAGBQJfnZIHAAoJEIoqalWqx6keqBYH/1CSGgN+Ljy4xJe5U+77rpFw
5 | 9XaQHDP5StT2QG6DCoZ3lsN3n8RspcTlqlyqYWqVDNpm7R9goRIhd12zeFy97KTV
6 | zO4BbnPovauw+WLTL3BVUC8XDEIlXdkZpy4JK5i66BqNIqznYmCrtQybd/b1sfwU
7 | FZrCHqsMEIqYnjDEpv4gauNd/FQExrpHVSSxv0bv7p5rF/MI3/xniFJ2TlvR1DRi
8 | P7eMvjOqo3JNAfT9YFozXK1ezbHH/hZssCtAPugUt2LZxbTecd/y4YYQkdv49K4E
9 | cYLe0FxwwNNe5Gfzmnd3fRVOTskOfBRA1wN4TagaGEXlsUKws93THcBcrdEaMs4=
10 | =EtcJ
11 | -----END PGP SIGNATURE-----
12 |
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.10-sources.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/libs/javafbp-4.1.10-sources.jar
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.10-sources.jar.asc:
--------------------------------------------------------------------------------
1 | -----BEGIN PGP SIGNATURE-----
2 | Version: BCPG v1.64
3 |
4 | iQEcBAABCgAGBQJfnZIHAAoJEIoqalWqx6keNAwIAI2LHUc5eByKZAfsdNxMWTIF
5 | BHhAybLOyGETk53ZEEdSW6JxzUvSAHedicM2a9XF1s0uk3ZKXSwMPvHqIXq40Y/Q
6 | Wntyyc3drI8iZ9DsCncUnEXajAG/Kzz2/lfQczaFKPHuwcRZcL3E8Xm3ki4UjhtW
7 | jo7VnYhNVQCEHhG7/kDkTQK1JHfX/G8uZR73CL0Em3OcBTMuRZSQ5eMGPqJhyHVN
8 | hR2BN867Qba3bzZt3CIzCYbcCwEA+UxlcQRBUnHjPLAQJvnlDqt19y6B44swZAXQ
9 | SFbdianZ5GdNdfr8xN6NH+u6XWJQEMJMNFIHhBz/rRzvSoRWoxbi9OAPLiILyYg=
10 | =KSFU
11 | -----END PGP SIGNATURE-----
12 |
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.10.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/libs/javafbp-4.1.10.jar
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.10.jar.asc:
--------------------------------------------------------------------------------
1 | -----BEGIN PGP SIGNATURE-----
2 | Version: BCPG v1.64
3 |
4 | iQEcBAABCgAGBQJfnZIHAAoJEIoqalWqx6kedZgH/3YamGeDojxjHyP4VXFQVMK4
5 | 7RkmZfx05F/GsaDNZzqL4HB8aNyQg5gWqBtjPIHcUzmrtUcLkLYHuNh1nsKiHag0
6 | FHRSoNxL68OSp720ur4NlDkHZWx6Eqn0+7Z8DPzr+dyzOqNTmXbYySXHbE4/gfUG
7 | /GYzT2/THjTofm9bw+zrIlUCkzdiA3V4ciliULcYqenLeEYMX/rDbxk5+jDHXqUY
8 | GzkPpu+5aDdM4KymWrBfEfNr0eMpPF+go0J1skJ61lTZQHP0t9LtT2wBQE7aQYXd
9 | iLPNS0widXIvaaIi42k+WHuNsglhbJ42C7UFQkGwir2OqAOwTklFjufqiaKcA40=
10 | =+D6a
11 | -----END PGP SIGNATURE-----
12 |
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.11-javadoc.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/libs/javafbp-4.1.11-javadoc.jar
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.11-javadoc.jar.asc:
--------------------------------------------------------------------------------
1 | -----BEGIN PGP SIGNATURE-----
2 | Version: BCPG v1.64
3 |
4 | iQEcBAABCgAGBQJfncmNAAoJEIoqalWqx6keNL4H/038JYQWrs+ZI3TbXn7of5Hb
5 | YoSp1Gnx45Lboi7iI3AJU2i+axUNDIEjgjeGyIenNv7PoW9IMFhiOUDmcdlktfwm
6 | 2+y2zYi2oWi30XoXNqIbiP5NA8ldfi6FPfAqbo5LNgrVqHGDSIU9jzneqlwgRYMv
7 | cGd56ReHqwEnvWvj9qoWFDGIMDXufz/4b1XSRAwP0CGinCXsJqSqEVYYDUXQGTIf
8 | Ig69lI+y2uFIjklMrF1d4NlKj0kryYa/mUiRsnZgPfFFe2u8t1Pymbox0CaqS2s+
9 | RPgrsjpoteS/VqOkyxT8T04hufA36WaZ1ANQXB/wvzvgblQ88806Yxp64q+0gls=
10 | =NUv+
11 | -----END PGP SIGNATURE-----
12 |
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.11-sources.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/libs/javafbp-4.1.11-sources.jar
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.11-sources.jar.asc:
--------------------------------------------------------------------------------
1 | -----BEGIN PGP SIGNATURE-----
2 | Version: BCPG v1.64
3 |
4 | iQEcBAABCgAGBQJfncmNAAoJEIoqalWqx6ke/ykH/1hCyk5xgW7lVgW1Geqotdrm
5 | 0AsdQVlEvXgiYHi19Hi8XwJeGxZY8BXTTK/Sd9smbgGHyeTC2tsiKeX9vPOBIF2o
6 | 6KAsExQwb8JA/BtJvhnkQfwlpBlFo71TfZfpSPkV/TlVXHGkV/evpIbvxJndDDJf
7 | obof6swxmVtDoyEdmQ/nd7aR6FBreq6T0OZ72s0Svi0z+9bCGg0YuhlwhXjgGImE
8 | NdInPjAOA40jUlbzFno3Ngum0I/eJwsasIFQKqVsSU2YZ4c2aMXuHU2H020ldWel
9 | XA8Vd+Gb7MXIIdagK3dkXfEXU+kvII8dRATJCwA/r5CNXOrqYwMfCGImXWS1tqU=
10 | =nc+T
11 | -----END PGP SIGNATURE-----
12 |
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.11.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/libs/javafbp-4.1.11.jar
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.11.jar.asc:
--------------------------------------------------------------------------------
1 | -----BEGIN PGP SIGNATURE-----
2 | Version: BCPG v1.64
3 |
4 | iQEcBAABCgAGBQJfncmNAAoJEIoqalWqx6ken2MH/RLjcsGSSHdHoQz7UHxHbjqM
5 | q4uWZOH7XSe0J6yot+JIXOibg7DQH5xPt10pzxNlELlVdKUWgvISUTrbm8kZN515
6 | +e+UywTucUAcPKid322fwkTXg/ihfDO0fRVw4d0jvO3SnyGzHr2/Y07oJsgqLZLN
7 | UXIqyf98OB0wPYwx2Rm1jEPusNF4v+JAv0/9qCL5kUa5ArBxTKizmtaGoHz1Zq0g
8 | qk/8p1zf9fucu86sO/ZWbCfciKgq+qIxCfSNBoDkkVrv4UDgYcrDMfZPysXfGn+x
9 | k/fXt3dR5jWJ3lelLx3gyN8JZRuuBAs/SO8YuvUC/2POEl/2p+Dyylbi1AA0OGw=
10 | =mUY5
11 | -----END PGP SIGNATURE-----
12 |
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.12-javadoc.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/libs/javafbp-4.1.12-javadoc.jar
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.12-javadoc.jar.asc:
--------------------------------------------------------------------------------
1 | -----BEGIN PGP SIGNATURE-----
2 | Version: BCPG v1.64
3 |
4 | iQEcBAABCgAGBQJg43hcAAoJEIoqalWqx6keD7MIAKSGO0vKWxtMQrt0CAKRW2rm
5 | 2WcKLYTwcX41svFxRedBjFBNKM1nkmCv94lu/cSk+NSWQZPeYdB32itHOdhrxpIs
6 | VVEaKVchGXzpAMgQ5qiNikIxjzP7eSr7MbMKCEJqTb2BBv4t6pIyCg/4fJAHX1lG
7 | C6L8fEqj12qMTn5cBTg8Z0+1T7IKmblkDIrWP2DANiCYdRnMznKSoEzVUu+aar5y
8 | gq5C297fRHYGlh1F1DsoNQK0iCwiJXrUCYFqX0Cq3W4XwxqYH/XyEPUh1FkCw1wZ
9 | N5w2L0cAIBw9Q91VGHcyPEubUCTTKyxqxR6tHKtpRQpZJ1+OZJ14sZ1ZN8fqG6c=
10 | =1Iza
11 | -----END PGP SIGNATURE-----
12 |
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.12-sources.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/libs/javafbp-4.1.12-sources.jar
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.12-sources.jar.asc:
--------------------------------------------------------------------------------
1 | -----BEGIN PGP SIGNATURE-----
2 | Version: BCPG v1.64
3 |
4 | iQEcBAABCgAGBQJg43hcAAoJEIoqalWqx6kelmcH/jqLbkQoLDaxv0zn3Uok7iB6
5 | eURJ+Cdcs4eQCWKFLuqbfLvD3OvcMLRoiCCfpNsby9r8qMD8GUbo7r2POBwMVwR6
6 | oDjQofAl8gG4GY7pJECASxpxknm5YvWFj4i1+ojCdiIot9TMiHwGaFY//27mtMbf
7 | D0mtwmFyUvmEyAfCDTJpRdz0YjcczPpJtF9H2LPZ9pv13mOlulNGrEIXTCfVRmGb
8 | B4HFrZh06PPKbmXkirODKCviPl9nc0wYdGHCCYcUCM5SIiwJrHJfkeeO8sXhXVQ+
9 | hAxGquTziMApCGekgFPUMolmd0cY3kG3fMUIN/pe8LygWUsMY+OobmQ1FgF1mtk=
10 | =faA0
11 | -----END PGP SIGNATURE-----
12 |
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.12.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/libs/javafbp-4.1.12.jar
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.12.jar.asc:
--------------------------------------------------------------------------------
1 | -----BEGIN PGP SIGNATURE-----
2 | Version: BCPG v1.64
3 |
4 | iQEcBAABCgAGBQJg43hcAAoJEIoqalWqx6ke7MAH/iJLCFRCauOGMkKZCkgDxC/i
5 | LhOFVLXIM/PcDuTFyJ1GKclEvSAH+VIKiSgv9/s2MnXwYccprZ8uSeuaYhVt8Lty
6 | WwEaSeVlYx66rdBXl7QXl2+iw3i/eaFUPez/dTc4u59i2g/y50ueGKsPlLsEXWxs
7 | L8fZVhNtuZvwp+2vdSijOCVTFjUYP0yjZ960Jjqef1riyYIBRZS6HsxaJdX80fxF
8 | 1YEnwYDJlfJv+Mi/GjqPf/w0RnPUTrXwXF4/r0LhBnwDsOW12Zh5sieYdCJCxXLF
9 | 3jcK9f2Cch6NvW8BKSQBLkblKViMwjUK+orIs/N/QR6GZs/vLkRJUztMmN60NpY=
10 | =GLmz
11 | -----END PGP SIGNATURE-----
12 |
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.13-javadoc.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/libs/javafbp-4.1.13-javadoc.jar
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.13-javadoc.jar.asc:
--------------------------------------------------------------------------------
1 | -----BEGIN PGP SIGNATURE-----
2 | Version: BCPG v1.64
3 |
4 | iQEcBAABCgAGBQJiQO+NAAoJEIoqalWqx6keDg8H+gJT7Zkm+N4KOiZPg49oan4i
5 | Ob8PtwqZdwZHJBVIFKRd9OXMTQpeF9xK8DrLtdTYMfPImV++/pczdRFuh9SMVIXG
6 | DXYPopJFe9cLfFD1Co9FYnkA8YVF51E3WHD5LDAlQifjfGiIHTabgUk07L2CoAur
7 | ciuVY/4bWZMqfAnYDEAb7djQmJT4Yggk3zQlA8fXWXGJangrSpJqQdd93PcD9Muk
8 | 7QsukL27sR6pWx2lJw3ya4DXvF6hv6KXCSQWdeGgQ7Ek8Uaqi4WBS34ATTmfcDkj
9 | s02uZiiA6iLfleL+3USnVwRpFBN/twwt/JTR6G++PBIywYAReZoS0lPYRQUR7Ys=
10 | =janB
11 | -----END PGP SIGNATURE-----
12 |
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.13-sources.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/libs/javafbp-4.1.13-sources.jar
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.13-sources.jar.asc:
--------------------------------------------------------------------------------
1 | -----BEGIN PGP SIGNATURE-----
2 | Version: BCPG v1.64
3 |
4 | iQEcBAABCgAGBQJiQO+NAAoJEIoqalWqx6kesYAH/iQAOgjp9zlEl7EBa2Hbe6or
5 | CtTpauBeyHE9L5+cAf/TRqBU0ovp/qs3uUFmbtoPYggH+Qm+bManARd4EeTqJoWw
6 | +zTGsBKd8KrwTPLaPLhyLf2m/97YZzvzy5vvHCzlXR2gG9IE5yE9EweF9LP3wTYe
7 | BDkNv+2Sq6/qhD0OpAnhnBdQGxfxtFg5pXF0OBU8DUe9IQO/+FW0BZ30yFe3h3jJ
8 | ZPQ5DI/hg40CBBJZiynwFduCESDrfOrVhWPVhVcSdAndKHgtTmfbsVC/0Xj9XmUz
9 | r2ynTBvnWc+jQJJJ9H5jHMPih7lCjFaI3mYrxIBepasqliCKzMy9igEIYMxJRaw=
10 | =9oC5
11 | -----END PGP SIGNATURE-----
12 |
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.13.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/libs/javafbp-4.1.13.jar
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.13.jar.asc:
--------------------------------------------------------------------------------
1 | -----BEGIN PGP SIGNATURE-----
2 | Version: BCPG v1.64
3 |
4 | iQEcBAABCgAGBQJiQO+NAAoJEIoqalWqx6keTkAH+QGFeza20WBF8lHiK5jSrpLw
5 | Zr92vkYULWmzCuiu9LVgzgHQtsFPmqhYhi8TeUIUZ/w+oMDdo02zUgt28cl3pwV6
6 | s6AwL0lQycmkxYspdgQwTlAWfO1aSR7ST+mciRwCx6GRr+D5W9hxiJ3YUJUtUD+R
7 | aMZ93Kmj6QcX1o4Hm/RjS2iC6rsOArKYDL7GcXW5FMqVxXOLLvBjYABJkUkwNfdN
8 | wIVA6fRmT0cWg+UPFm1ZJI/CkKp1bxZYpvvw2oX5ESqpzw4b2JdOA1f6UGvqKwWT
9 | UvbN2y42dFIrmYMStJQdSfYc6/bHKSOnvlsZSbCwOQLGorDvHVh/J7yjYQGNaE8=
10 | =0xYj
11 | -----END PGP SIGNATURE-----
12 |
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.14-javadoc.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/libs/javafbp-4.1.14-javadoc.jar
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.14-sources.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/libs/javafbp-4.1.14-sources.jar
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.14.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/libs/javafbp-4.1.14.jar
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.2-javadoc.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/libs/javafbp-4.1.2-javadoc.jar
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.2-javadoc.jar.asc:
--------------------------------------------------------------------------------
1 | -----BEGIN PGP SIGNATURE-----
2 | Version: BCPG v1.64
3 |
4 | iQEcBAABCgAGBQJebOesAAoJEIoqalWqx6keI2oIAJQjkwKX2xnnbvmanqhF7VTS
5 | 6cjnmISpu7LtCU9gMvpYtzfUqYpNhAIWz+bzOcmmjJIW6CCF0ppJOCW6B/qpouwp
6 | Axqdh0l6VJXBA3TvpZ6Ef+hPf0i3oKHYxCzIzS72IXWMsC8Tg0tw5276kO5sFFHd
7 | uie7BtWcfZckOW2OZCTArQy2BJOJO6jupflGnzDjhwAFdaP3VRreyGdSsGJRLgJD
8 | ylahfIplwa6eEXu1+ZppTBfeMJi3T7u/saz1qHDbbpHfZsJ4AsO6PphyFEYZXX6u
9 | YB5JCoaeJkeY5mRdDRa++bbgAB0epoUZDyxpG5bQZE65XHMzd7qb7pSuGtgnIY8=
10 | =pcrP
11 | -----END PGP SIGNATURE-----
12 |
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.2-sources.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/libs/javafbp-4.1.2-sources.jar
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.2-sources.jar.asc:
--------------------------------------------------------------------------------
1 | -----BEGIN PGP SIGNATURE-----
2 | Version: BCPG v1.64
3 |
4 | iQEcBAABCgAGBQJebOesAAoJEIoqalWqx6keQnsIAJ/1FB1aiZprkXwY0hHssEaM
5 | 9QqF+GQgIy38g4sI3loHPpUE8tRrSqgyJEvGOVWpmDzfWUnnxR+WC7qHARIALBOm
6 | 09Czhu+CbkS81dvZ3GbCa+MiZ2Ts67ntnwk20GarTXIo0jfpzDNsEInBWT7uJlL3
7 | m+sby76L+Mp6R2XmkMhO3VdzJTNqYKeNLeU9ivvHyak43UWnkPk5IygAOts4NVaZ
8 | /P/i1TUN8/IJAmr/9zxUKAhwgkp42X3OzYTuh+32Wu0si743G3Qi/C9Q/mgATK6F
9 | kL7MgDsOWYdJeP5qbEmIBNv4dbYA5sFQhR7QjpCkGeG775Rf4mD8pux5rdRdxYU=
10 | =kFws
11 | -----END PGP SIGNATURE-----
12 |
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.2.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/libs/javafbp-4.1.2.jar
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.2.jar.asc:
--------------------------------------------------------------------------------
1 | -----BEGIN PGP SIGNATURE-----
2 | Version: BCPG v1.64
3 |
4 | iQEcBAABCgAGBQJebOesAAoJEIoqalWqx6keXvYIAJ+Fb0mRLrFZS9ujZMtr7ySX
5 | p2xwfP2Ce3WFVpBHdi1o7MLtXgfBF8wTJ8TL/Bro0NHm4l+IGPdS5xkqxDU6TdEm
6 | L/gjOnhImTWSTdFdyTgt2CvvcyK7x6/rC+inhviTF9+KDpAcHymbBukXU5QmwJl1
7 | qQRdoEI7DYSTsz3sFxk0hPbNTh1ZgO0dp46TSatYke3b+2HwkL2Yvij5EtawE8dD
8 | Rvywoq3OLAY59309iGKw6Gol8zgAAV8oiKhatHzI+bZ6rZL7vVIgudBsVjxs+xPe
9 | PFK2yYii7huM0uBhopKwFNcOTEtp+kGyvdxEezO4KWmnKic2KH/jfKMkH5op/FE=
10 | =1PWN
11 | -----END PGP SIGNATURE-----
12 |
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.3-javadoc.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/libs/javafbp-4.1.3-javadoc.jar
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.3-javadoc.jar.asc:
--------------------------------------------------------------------------------
1 | -----BEGIN PGP SIGNATURE-----
2 | Version: BCPG v1.64
3 |
4 | iQEcBAABCgAGBQJe57ULAAoJEIoqalWqx6keWhsH/R15ggI4x6t9p/XRAW78A8oo
5 | thEvG6MDD9cR58uXHUveGVLS/J+mTESjOj2gUJ3mIbp5vCFfv7MmJ2zOgFOGJRBZ
6 | SvKoy6K/WPGihogcoqZkhWGv2z/8HP4Wn27cpD7djm3F7YjF97ao3NiJJosOE7Y7
7 | WI91AzkUqbIwUOeiX3n3A4l5HTXlmVFFWzRaEIO0B3lZ1LfOLI4/Oy0ZK60XskUC
8 | CGU7j52lqKKjA68xPVYMdVWyMbBzU4JTTFnCHwmIpc8vBiR7yd+Msk13JB1IIgqk
9 | xvmeN3Gbxz8hZ+7Jra6ZBeQ0+iq573WfMlKoQ4PqCHgEZxuG795tYhyQvIu51fg=
10 | =qxTV
11 | -----END PGP SIGNATURE-----
12 |
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.3-sources.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/libs/javafbp-4.1.3-sources.jar
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.3-sources.jar.asc:
--------------------------------------------------------------------------------
1 | -----BEGIN PGP SIGNATURE-----
2 | Version: BCPG v1.64
3 |
4 | iQEcBAABCgAGBQJe57ULAAoJEIoqalWqx6keJTEH/1HUgPjnsRHw163LuXEewY+D
5 | HRFrjd3D5ZLucEreGUunNQUaR//2m9JvsFIZrQqH9wt/luZY4KJEYidqHWy03wP3
6 | 3MglvyqF9/ybPVAz0RqN3m2cRRM4Wy5aeFYNy8N+zLwyyvyAA/N/AV1oNMEwL/nF
7 | hGbZwfm4Zs8OKyEdlJ/VaNPsOy/KV4iI0vr56XrsxDootAvJjlAAMWxZCdWYy93u
8 | HO/kM/kRbbKLc5HZxu3G07OAPhjCR+KR2T+4QjnpvTHktVswuvO0upRykzvTpOd/
9 | Mt2JGOa7Vw1R8FJJpVxQzanCIb2yD+l47dXQKjJW+W+xYIWViCbQnxTQVFUzEJg=
10 | =24XK
11 | -----END PGP SIGNATURE-----
12 |
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.3.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/libs/javafbp-4.1.3.jar
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.3.jar.asc:
--------------------------------------------------------------------------------
1 | -----BEGIN PGP SIGNATURE-----
2 | Version: BCPG v1.64
3 |
4 | iQEcBAABCgAGBQJe57ULAAoJEIoqalWqx6ke7e0H/1HKiROGASGVOZ7iuX8kkEYJ
5 | cUcpl4ClYYyPJA613Mx9Y5rB3eUCjdAYpQHtyi25ifmcliuWJ4ukq6WgAB8v820t
6 | Uc0/rVPcswLppRvz2rGs6fJaoRP4nFEcISEK0myrWh+8idxYiVqFoNvhAk0sfFk5
7 | qD/tWE3k2wJvnu7m5SmZFr6qVqGjehHFKWIjMYfk1cvlN4XRS78BJ1ThfIDyUoPR
8 | ltU6MVqn6P+pt//jWu7GiU+xLT9iMBd/0LnfWIqTqQ5SeVlIBbpXdwDC89TfYqrD
9 | ix9l0P7xlBHNOTcPsUwH+KEv54+G/8s43u2Xji1TSPIGfxEaKTP+mbsbu0jucpA=
10 | =Vavc
11 | -----END PGP SIGNATURE-----
12 |
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.4-javadoc.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/libs/javafbp-4.1.4-javadoc.jar
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.4-javadoc.jar.asc:
--------------------------------------------------------------------------------
1 | -----BEGIN PGP SIGNATURE-----
2 | Version: BCPG v1.64
3 |
4 | iQEcBAABCgAGBQJfBMmCAAoJEIoqalWqx6ke1MsH/Az8T/WASps5R7djfVqdufse
5 | zedXBbB/gjUoS5Bo3k8eDEu3ML7vfDcWKEBxqDncxBrMYDwYvMuzToCio3zjPqac
6 | BbcgGx7UN4bWgsYaZASlGUltB1XgnsviPmA77p14O2xgrAlT8I3Ef7k0qM1oim0/
7 | HwAF3v2Qi43aQc5rzAzu6tWTLOm7RifkUKq4+uZpGT1HjzKB9edW8PeGiadlbvFd
8 | /Gv5vMdGyIaHDaNaW6dK81AsdZZP4wY4vek8fJp77iUeiAVqRzZl+PZha6Hg/bw+
9 | 3ZRpz5YCyuo7eMg+tLTwkDXcG0qsh26MxYUvHc0tYdrQixsgrDgrOTB6CbQs5Wk=
10 | =DXwI
11 | -----END PGP SIGNATURE-----
12 |
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.4-sources.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/libs/javafbp-4.1.4-sources.jar
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.4-sources.jar.asc:
--------------------------------------------------------------------------------
1 | -----BEGIN PGP SIGNATURE-----
2 | Version: BCPG v1.64
3 |
4 | iQEcBAABCgAGBQJfBMmCAAoJEIoqalWqx6keiggH/37MOLrh9EVWfYl4OWp91YTK
5 | 8bVRdOZTdh1/6/AOVNvALvPGoNaG/CSFGZGtn5BVSRqNavk9GchkdU6gBy3NHRqD
6 | XSOEafgMXePPOt8wue6QiLIgJ2BWjMvA1xnYZZJT7h6cGP5t99SedYfyTxIe5FKz
7 | 7j/xyIF1igiz2kYeeA5/2NNa2zdsemoI/2jg53ZK0SHuHTH3ElmrVezfOwJP/nve
8 | wF9g4imCPEX18zVY7fAVxEPeSVU9vkp0qVCbhI1VbVprehTZKSwxtyhlHvjV2hga
9 | Qffm0nk2LWd8MzcQ4RySjfmCbO2DXEHXwVHWb69zZS7L5rr6Z8x+F9sDmHSL6Mk=
10 | =h+bz
11 | -----END PGP SIGNATURE-----
12 |
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.4.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/libs/javafbp-4.1.4.jar
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.4.jar.asc:
--------------------------------------------------------------------------------
1 | -----BEGIN PGP SIGNATURE-----
2 | Version: BCPG v1.64
3 |
4 | iQEcBAABCgAGBQJfBMmCAAoJEIoqalWqx6keld8H/jZ7NeRcGEW6NHM/Zs9CcFvq
5 | CDaF88gZtZqgOD/JinyuXyJE8EJ+VWLr97ju0Tw8A6FypbZvrUWNUUiEqdoBIcyj
6 | 6M5ZbpN2Ubs6kBcZU7lG4goOfubSIRlXYVpRillyi0rMNvkkpWV/LnQTJbimuOK3
7 | wR3C9rzpXrvaL6XZN5RiO0Am9j9eSSgZ6oYsXwL9gE/LypS73hJYasXMRazSRniH
8 | 7exeogNxyPnxwz0QunYzRd6Y3bOcSlBO+riyDP5cuuS75tJLibmr3bWqkPf9RSqI
9 | mZflb3MSVFw6GOTxZ0X1c70Z4SkgSntt3+vOQB5iskA7fAUzmDxHsQN0D5HCy3Y=
10 | =RahM
11 | -----END PGP SIGNATURE-----
12 |
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.5-javadoc.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/libs/javafbp-4.1.5-javadoc.jar
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.5-javadoc.jar.asc:
--------------------------------------------------------------------------------
1 | -----BEGIN PGP SIGNATURE-----
2 | Version: BCPG v1.64
3 |
4 | iQEcBAABCgAGBQJfHbgfAAoJEIoqalWqx6kev0MH/3XNjQiJuGHE/+wEeiEXl9ct
5 | zbjRMuwTYI8Tjjquk+/YKWP8HePzGRSN4zUduqC6l3xew6TfGIG+nt7V4xXyGyKw
6 | 51Ml5DD4CBxj5JueeU6bOEcWUF9epVJow/8i//v875N5SsOYndo/GPj4Z9jXvzkN
7 | Jf0YRY0Bpn0Cd3cYXE+STLPNYH5FxsAyCCATt4AnOi9RUANmaa46tJdqcLovF9Cu
8 | Bhh8dTskUas1cdFWaPlpX7XbcaMWBPzDzDeEl/iHPSYjrNNI+g8snLNrOyMnVQl1
9 | KU+MNGDucOGGE8UJQix+dFLt/kTzpRpvVNpaAlJM/zVHY+upNikGmUjUDlWb/Ok=
10 | =GtY4
11 | -----END PGP SIGNATURE-----
12 |
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.5-sources.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/libs/javafbp-4.1.5-sources.jar
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.5-sources.jar.asc:
--------------------------------------------------------------------------------
1 | -----BEGIN PGP SIGNATURE-----
2 | Version: BCPG v1.64
3 |
4 | iQEcBAABCgAGBQJfHbgfAAoJEIoqalWqx6kejwYIAJtqedJ3ZQkUk3d9cjRo+fy7
5 | /qz7weSCuX4XNrBoNFt+i1eTHnhlEMrC4f7pOBYZ64ITXB3lZLBA+fUUZ4in8fqw
6 | EXhEtIZr8llFmJ4BvPqVVI/ftuzGuG/b8Yn1NN8tv+EzV2WzqZPyL+t6swglXUZn
7 | QH3vQeMP3SeBf3dnagpUQ5/TSDp6QnQYQ4y0zLIRt0Lev0P2fmsGOoAQitdmpE+O
8 | jDje/8TWb3diXWGPNRQLyJuycqzdX8qhIdbtIue5EI7Oqz10APlsw5L0LCf8OpFc
9 | VDWpowDFGSuMqpYPbx2aNiAViACyOQFQ/Dz8Gw+5q8rF/gpC+WPRt1u7ywHgqJg=
10 | =/gSY
11 | -----END PGP SIGNATURE-----
12 |
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.5.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/libs/javafbp-4.1.5.jar
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.5.jar.asc:
--------------------------------------------------------------------------------
1 | -----BEGIN PGP SIGNATURE-----
2 | Version: BCPG v1.64
3 |
4 | iQEcBAABCgAGBQJfHbgfAAoJEIoqalWqx6keRkgIALJ2KP6nXslKE9bFicqEylAf
5 | l4stnFWc2TA2Q45B7H1NfDRsAsOAWVvr36O0/uvfqek9PpHPtdaxw/VQvhL7wxJb
6 | LPrQ5yhg49Y3TZJhLFKSA2YTF6wYZf7MXBspyGpZwf9BQZrGdbbtnxk7qxXNYncl
7 | gLuJOV+UwuSweWBZmh83uXJpJ0BplE+tqKpdVX6UAghMZewTSDi9J103ebEaXb8j
8 | xf9s6cR/MWf4yxiwGgEabio0HjxkiK6Q/J1d1Tv073TfZcZtHfgRnAmVwzsZskZf
9 | QHPi3k6FLYr0zn515pmWxy2YHmmZbzXS628IU/jPUUEH5wggDid6KJMMQKVWzEg=
10 | =gxRA
11 | -----END PGP SIGNATURE-----
12 |
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.6-javadoc.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/libs/javafbp-4.1.6-javadoc.jar
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.6-javadoc.jar.asc:
--------------------------------------------------------------------------------
1 | -----BEGIN PGP SIGNATURE-----
2 | Version: BCPG v1.64
3 |
4 | iQEcBAABCgAGBQJfH0/UAAoJEIoqalWqx6kedq4H/jHbwAMetcf4G7pblF5r6KA9
5 | mgNkNu5Pm1KV3HPHnlthfXt+LQTPfkGZZrUe9Se9/1hcdrsbtLTlhmyrj0uH14bL
6 | 2JaaGa7chop+EQ2+i72JJCu+L7Mz/MuvEWIyT1On+JQ8F1etALKEHVVru8uJgDaB
7 | x+EwuK4QF7Mg/ItYl5lk8o4AlEAt0MNtR29PTPz8gA7tEzX/2bJKr4CdPTlZZ5aY
8 | x7zo1yJPf06G7dkcdimmkSCqf9/cc6QojcOAwUKIPfE9LYZWdbkh3v2gYE9GNM+T
9 | mOFyZRkPJ/G0iZN0LsU1zlpRfSnRUdzrSveSrtD/AIhJRBLpQ79NR9hSNhqm0+0=
10 | =gCgg
11 | -----END PGP SIGNATURE-----
12 |
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.6-sources.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/libs/javafbp-4.1.6-sources.jar
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.6-sources.jar.asc:
--------------------------------------------------------------------------------
1 | -----BEGIN PGP SIGNATURE-----
2 | Version: BCPG v1.64
3 |
4 | iQEcBAABCgAGBQJfH0/UAAoJEIoqalWqx6keSyAH/3T5dYx6w3R9A2gANPcWXh/t
5 | fStUIUCMfTSn+SDLzt12JQRDCPwpuT9X8va4sceyCgllujK9/SWp2wx7Epxog7on
6 | 8L8yu4qFx+ACCM2/Qe23S/1GOYAJJTnWtniZEbREpHeTjzaXWKYjfc6YRlZmW26X
7 | 9tuZVqn7pVWdGUs0RctUaGbMqit61xOfaJw84S5h3sINsvjaPe81QIFMY2QfMgud
8 | FMEDwAivDb+DfGA1jhRmz3QXHN5X2VKHYxJrvS5KiV4DvpPoRRNTa0rMl0lNzRN/
9 | EKjoeHBU3cE0d/SPzp8/xE/vgQUhM3Xf4ADxb8Ku76/lLmQof1dg4NCZW40gZ80=
10 | =KzRU
11 | -----END PGP SIGNATURE-----
12 |
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.6.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/libs/javafbp-4.1.6.jar
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.6.jar.asc:
--------------------------------------------------------------------------------
1 | -----BEGIN PGP SIGNATURE-----
2 | Version: BCPG v1.64
3 |
4 | iQEcBAABCgAGBQJfH0/UAAoJEIoqalWqx6keP3wH/22UHuco2orIMocDUrxpB/Wd
5 | 4CPsQEfxlZBLDckUeVw0HMORiNndl10prdjl32sCResrMHRQaFmYPW7AgxEnju/j
6 | CmUfIcXoLlfeQaX4Vu0DNw+jOXB4Za02bhIGlowAQbYDg2UjviWDWI/drBjE95EW
7 | 1VlbgE3iPe7MsK+Y/iYZ6TDFAuMG9+DD710EcUmBzQUVRbjXIq3UCwPw+35hFzbl
8 | oUQgHAJS4wLViz1w3+Pqplf+3C8QDIjE8gi+FCG2CVZs8b4y889iXixrTobopyAg
9 | 1Lu6jEGzAiurcg6Ab8UXLp19L0wPvscE9ZoSrVkdSdx8URfT7Fn6oiBZXcW5O1c=
10 | =Oc87
11 | -----END PGP SIGNATURE-----
12 |
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.7-javadoc.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/libs/javafbp-4.1.7-javadoc.jar
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.7-javadoc.jar.asc:
--------------------------------------------------------------------------------
1 | -----BEGIN PGP SIGNATURE-----
2 | Version: BCPG v1.64
3 |
4 | iQEcBAABCgAGBQJfkJzRAAoJEIoqalWqx6keRqUIAIiE2CCBoC5owZBJUJjn/uJ5
5 | b946aNyjErDokg1VoHNNInr9LLnZX56Ev2SQ+prUwUo7ejt52fx+wFZAhq2GeOk4
6 | ePo7Fs5/0U7QqvJUAXqYRU7GLJ7z4Cb7tYSlPI3vkcF3U0w2VhoTC9jwy48zJtaA
7 | SfLRJUDp1Cxq3rhYVARtBA/p6lf8dxDsb+M+bIlcAYknXlQaF/W3tHJZw0qi7QM5
8 | TNn89B7BQfRz7ezQ6W1J7/RWkK+RHL281c5Nr+3i6L4j+v2m9tT8pMzPXxmUOeTP
9 | zZqAJvrHTnLGd60bgi2yGWvOJ6tRPbNgJjAHq1kVQbTbcfRo9zznT8QNDMUqlZI=
10 | =NWLB
11 | -----END PGP SIGNATURE-----
12 |
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.7-sources.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/libs/javafbp-4.1.7-sources.jar
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.7-sources.jar.asc:
--------------------------------------------------------------------------------
1 | -----BEGIN PGP SIGNATURE-----
2 | Version: BCPG v1.64
3 |
4 | iQEcBAABCgAGBQJfkJzRAAoJEIoqalWqx6ke1XUIAKiQwGt9+RI/JVz4Mn7Rk8Mo
5 | EqFOfvW37WqQfpxT2Tshatn8CqQsWG3QGjWzgih/38Ddi9S7UmdSYiVDbD2e2xzN
6 | U17AWZ9B9ZLygEBXQpVZdJbguzY7xe7sZo8ViCPZVR8RcslQc8H1X2hwlTOBKEC8
7 | 2HAOyVoWm05KRB2qm5plnjlUTVepaNsk47RTHJvvI538UF1WzkQK9iyS2EqLNUCA
8 | ydNZRO4M/vhJ14puCl/2hxaMqbsmwqQNHQ+xExf+jG60Z8NwmF6bXqW04fsO3wh4
9 | nDMWDXj9HuFOlxVjNYmq2OJ27NkytXCdKTm7lA1bMcb/4IrdVs095nXtnGqe2E0=
10 | =T4J0
11 | -----END PGP SIGNATURE-----
12 |
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.7.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/libs/javafbp-4.1.7.jar
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.7.jar.asc:
--------------------------------------------------------------------------------
1 | -----BEGIN PGP SIGNATURE-----
2 | Version: BCPG v1.64
3 |
4 | iQEcBAABCgAGBQJfkJzRAAoJEIoqalWqx6keFGwH/0ZgHfIMP5r7BIwc2DCI/6KP
5 | BqgDGGDTIldlWT6EuZhJBajCxQMK1osoMfbO4l9I/rWVXJ96PQgHq8DLzZG2LZ/7
6 | eF+Jy/fKsLbRKydc44Cb/sk3vtXV3HKoKTwnN4CjaH6qn9bKqTKl09KyoqUo6L9K
7 | E06TASszAM0vEZ2Ck0URXCUNn1IMnEoMmdAj9kVES4WdcbN9zyVthL8mnStc1zXT
8 | bvm+RkmkkJfzOn+WpYS8FLeXGx75Rua5DAUpTHp/uYCWdoCInD6bKYORda5k05hf
9 | 6zZzps3WbHThutR9N7h0jKebWYHHoYUy+x23qZ6TN7GBMIzj+cBpuksW8f1Jj2M=
10 | =ff4r
11 | -----END PGP SIGNATURE-----
12 |
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.8-javadoc.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/libs/javafbp-4.1.8-javadoc.jar
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.8-javadoc.jar.asc:
--------------------------------------------------------------------------------
1 | -----BEGIN PGP SIGNATURE-----
2 | Version: BCPG v1.64
3 |
4 | iQEcBAABCgAGBQJflyZtAAoJEIoqalWqx6keP9IH/3DWekF+/tb61+Xyz8khtkKN
5 | tFihCvHCY3u63E6DCSxVsiHRVvFnIlKDD/qhVgGR6h2Z/ZlGnaeiG6ZHMAzw1nUm
6 | XQsXqK+2FSAAkwGgj1kDmDuRdfNwdCD0ufGuNeB510dLqUZtW9r1UEs8zzebYCn6
7 | DQZAPg3cfHUWoerVIoep93unj+a/0QV3TuGCQHedglKXwCIv+22H/oFrjo/mBp0S
8 | VJNpxp3g4mHk7QPghPdftjG4fAUAvZ5DuavlRnyLFifkLODCL/6FG+31XqsfzFHs
9 | Dghw0wNEa8eDc007FiEIyZ8Fn7LdG7QH3hsVbVPlq+EKBqhYnedJb4yI2EFrYIU=
10 | =7hes
11 | -----END PGP SIGNATURE-----
12 |
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.8-sources.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/libs/javafbp-4.1.8-sources.jar
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.8-sources.jar.asc:
--------------------------------------------------------------------------------
1 | -----BEGIN PGP SIGNATURE-----
2 | Version: BCPG v1.64
3 |
4 | iQEcBAABCgAGBQJflyZtAAoJEIoqalWqx6keA8UH/037XOYz3AUA3ybLDuMWfvkD
5 | nOq1gmdrBGREMN9s2/hp7y4/T8IiMW275TnwD/padGdnm3CLx2LwfYUvh4KGNZ+s
6 | Mg9UiVA3ZedxAQie10qr70BTllkxXX0pdNtyW9mZ57nUjdH49vy4hFlGhVlLZGuU
7 | /RJJ1U23ukMMdwkcqVcYmCPNxC92JTL0Mf+OxBxaCYmoeOkETTLeJgXKWvh9Rzqm
8 | eXCY/KuMsVVO/lRlVzbY4YxVSprPa9UUUPzyQXgPZrctCH9BD4VEDLxDDp+gI0/g
9 | 4J/9zBat+BKfY9ek5HXBPUJ1cycq9W64D5hUXgYar7rnUP17vE1EWYCqzFdW0ds=
10 | =Xh1j
11 | -----END PGP SIGNATURE-----
12 |
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.8.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/libs/javafbp-4.1.8.jar
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.8.jar.asc:
--------------------------------------------------------------------------------
1 | -----BEGIN PGP SIGNATURE-----
2 | Version: BCPG v1.64
3 |
4 | iQEcBAABCgAGBQJflyZtAAoJEIoqalWqx6keveMH/0gq+FNGJoIow/8NFqidfS1W
5 | rrGHsp8dZUPFC0qElQp+7dzz95tnVZ1oqws2qxmo7vjULMUacN+TKoRwKR3Lef1h
6 | lsd7sgckdSvF1iThYMm0WdxnCBYq9WrYyYHo/uAN9N6vmM8gQ1zPXG5R5avptoAf
7 | moMlNnlnA16HtQ9rfuDoVg0H6WWbFABGG1dRWCwiJEkDrlCdVuQdxdW3GIU+845f
8 | ncgOiRHSruhF8h0SsQXd2J0j5ucKahALNu7U/2S73JpTeJW2fx4GGwVR260iUlbV
9 | Yi/s3bBtC/Fm3XcSDh0N3wcmGnotw320gAUVgzph72txxl6pKbhhVIrNzZu/j3o=
10 | =rb+a
11 | -----END PGP SIGNATURE-----
12 |
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.9-javadoc.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/libs/javafbp-4.1.9-javadoc.jar
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.9-javadoc.jar.asc:
--------------------------------------------------------------------------------
1 | -----BEGIN PGP SIGNATURE-----
2 | Version: BCPG v1.64
3 |
4 | iQEcBAABCgAGBQJfmHGeAAoJEIoqalWqx6ke8fkH/RRlHby1DbZa0aIIZRLI66UP
5 | 3IZb5qiyjqo6gcPezgJtRTn/ie9UmEDWp3OzUv+WvIyYE/MvAdfH030IahqF70W4
6 | hmb7b5RAfGF8FEWmTnUMZE4aBxajWMBaB04iVriD4umrgJn8LCvUOlOR3hLyTdsE
7 | A2+pJcL5rWbArtwSF+eY3zwxFtPXQe40A8VW7GJANe/c4DallnN/j9sxSQkH64Wd
8 | xwt+c+6vh3VXXYn2t0hhdPPBHew+rF5xLD6Cls7xa43hmzf7ZX2+lEHCYY6UoJ5A
9 | 1e2SwsnOd+Yq90IKqMdheijJcihxEFIb3RYtGpt3dIuOJS3HJeK82lTV9w+SdcY=
10 | =vCTV
11 | -----END PGP SIGNATURE-----
12 |
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.9-sources.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/libs/javafbp-4.1.9-sources.jar
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.9-sources.jar.asc:
--------------------------------------------------------------------------------
1 | -----BEGIN PGP SIGNATURE-----
2 | Version: BCPG v1.64
3 |
4 | iQEcBAABCgAGBQJfmHGeAAoJEIoqalWqx6kebTEH/0wpvUddSQbClOXdQwFnQcYU
5 | 46tJEVIJHK5AomeP2Bsy0OKsQgIYDpX00YVHr7IPrQub+ZLJ4xrvN5I/bWKQLMDt
6 | eczsLdr7BSx8+lWnVlRP2FnrbhI3uoMXJSJhVjGRCPpXuWQkpdO6VKcEcQifqMaj
7 | PImst78vwom8XEG55iBoamlcEer3fG0S2bp72+DU4rKEc/e4JAenuMSpQLazlrwh
8 | jI+wphRt0mcsDX3As5IoxaPQm7DqJKWrnb+/OQGPJ0YoyTd3GnPfHB1jqTscZCi+
9 | r1oTZTtUodOJODBSxwEpuWeF4sI4xnBGpwTYXtL64XNTnS1R2AhM0nFKJrQCeJw=
10 | =4qEZ
11 | -----END PGP SIGNATURE-----
12 |
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.9.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/build/libs/javafbp-4.1.9.jar
--------------------------------------------------------------------------------
/build/libs/javafbp-4.1.9.jar.asc:
--------------------------------------------------------------------------------
1 | -----BEGIN PGP SIGNATURE-----
2 | Version: BCPG v1.64
3 |
4 | iQEcBAABCgAGBQJfmHGfAAoJEIoqalWqx6ke8tQH/Rt378W6OCvdrGVJB7CSgcj7
5 | ZvdDJ+8Rgl1sk0W5GPzCgwrguLvBZkd7SYT8Gs1FG0cPl1BcNePUjaVOG7wVKbS3
6 | bw9T3L3yPw4X7jpgS8l5L5Ibs1MLNHZyHXhO6C0EOUfp3NGoZFdQp4zUPAzrsyP7
7 | Ph7j0/gsUEKI6rQC6ncntuBCmRHBz/CCNUvhJG0UC8bYCa7oX7X8OSdP6F52JL3S
8 | zcWj+XHfW3ELPIr6P4lAXnQYRub/2xf891znfKEkgL6kzVGCcIOau05ejur/y1/6
9 | i99bW3H7EPDFOQg+HILxCo8DJbgqRczit099noOoJF9pBwGkQPI6r84sjjAxFTQ=
10 | =oziG
11 | -----END PGP SIGNATURE-----
12 |
--------------------------------------------------------------------------------
/build/poms/pom-default.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 | 4.0.0
5 | com.jpaulmorrison
6 | javafbp
7 | 4.1.0
8 | JavaFBP
9 | Java Implementation of "Classical" Flow-Based Programming
10 | https://github.com/jpaulm/javafbp
11 |
12 |
13 | GNU Lesser General Public License, Version 3.0
14 | https://www.gnu.org/licenses/lgpl-3.0.txt
15 |
16 |
17 |
18 |
19 | jpaulmorr
20 | John Paul Rodker Morrison (Software architect)
21 | jpaulmorr@gmail.com
22 |
23 |
24 |
25 | scm:git:https://github.com/jpaulm.git
26 | scm:git:https://github.com/jpaulm.git
27 | https://github.com/jpaulm.git
28 |
29 |
30 |
--------------------------------------------------------------------------------
/build/poms/pom-default.xml.asc:
--------------------------------------------------------------------------------
1 | -----BEGIN PGP SIGNATURE-----
2 | Version: BCPG v1.51
3 |
4 | iQEcBAABAgAGBQJavlF8AAoJEIoqalWqx6keEZ0H/3j375pTsMKXGsjCKasM3pNh
5 | By8gUjpkP240H7L/qcQUXdgpn0LhKNlB8I23Tta4Xk+N8ExW3Ozp8fp1VCOpwmFL
6 | b23q5Bqe45ODAFFrFooDdld5Lf17U6iZRA5gius7uoE9Ony33pWsbySm2Zh8R8Vw
7 | 5tnndz4l0b8HlXZiUUDMVWiw7Z//VqbD4ToqmlHZ0iAcvkZweHTJsCh2jjDl2Sbs
8 | AOZjfE9ApJxojATAv+l9Q3cOExXlqXjFDMIaVzixlBcBFPoZLCNWwZbN9SUNLZLB
9 | EKvAnepbM4lQeJIpkHnkgfmJh1WTWdFryC8qsl7RIyGsiQEYoQ9gRNMxxigjPlk=
10 | =No7P
11 | -----END PGP SIGNATURE-----
12 |
--------------------------------------------------------------------------------
/build/publications/mavenJava/module.json.asc:
--------------------------------------------------------------------------------
1 | -----BEGIN PGP SIGNATURE-----
2 | Version: BCPG v1.64
3 |
4 | iQEcBAABCgAGBQJiQO+NAAoJEIoqalWqx6ketHwH/0LB4p44AG8GzWR02M/1IyV/
5 | 6E9M936WM54qd16o92OeFygwl+eBOvGki6Uci/ySpMjiT99IMOw0K0NjOdVdI53V
6 | NLxXeF0mJaLvKFZegn2Ul7NbRe6/dAdPIllJOrSomX/l7blKKJn3O/+zHyB+uNZW
7 | gNO2vrxjBbs0RV8SlukKIrCIJ+hy6NpQJhp9/r1EcQiKITJl/y4e8bzgYIIxM901
8 | kKLUmZu+p2gzM7mHpwaeU6LuL0FC4HqLNKpmB6visnAtR7w+2WWAJjbQzpksBNKo
9 | bjOHhU9CV1LWzNpKTsuY/w7yuIPO1uk93ROlWJRHVIZLgBxkAOkvW+Ivmbehs7E=
10 | =1W2J
11 | -----END PGP SIGNATURE-----
12 |
--------------------------------------------------------------------------------
/build/publications/mavenJava/pom-default.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
6 |
7 |
8 |
9 | 4.0.0
10 | com.jpaulmorrison
11 | javafbp
12 | 4.1.13
13 | JavaFBP
14 | Java implementation of Flow-Based Programming
15 | https://github.com/jpaulm/javafbp
16 |
17 |
18 | Clarified Artistic License
19 | https://spdx.org/licenses/ClArtistic.html
20 |
21 |
22 |
23 |
24 | jpaulmorr
25 | John Paul Rodker Morrison (Software architect/developer)
26 | jpaulmorr@gmail.com
27 |
28 |
29 |
30 | scm:git:git:https://github.com/jpaulm.git
31 | scm:git:ssh:https://github.com/jpaulm.git
32 | https://github.com/jpaulm.git
33 |
34 |
35 |
--------------------------------------------------------------------------------
/build/publications/mavenJava/pom-default.xml.asc:
--------------------------------------------------------------------------------
1 | -----BEGIN PGP SIGNATURE-----
2 | Version: BCPG v1.64
3 |
4 | iQEcBAABCgAGBQJiQO+NAAoJEIoqalWqx6ke7HMIALJMU7BU/VzyXYMlhoktobPM
5 | OU7cEFQTkCr2NaZi/wKqdTZNLu4NoBlmeK6VvEOqMifdLbEM8gdBFNmiWH35zpjw
6 | FWETpwaTNGwGfdWlSsNQvhct2Uz0tyJ5887ONsjwinBSZvDgcSScDWwnA8+cQYBZ
7 | w2yJGnOafxQcfcQT+z6Wmvwaepd6ouTl/pHRyri44CDSeZoY8fhAltdxvkzzjZrv
8 | ooUREU5lT34oSAy6d39GhguSN/WsJ4LdnARyun60YAwW2cybWTPwGX2Rd9/ZMTnA
9 | PS04fgrXpu9ZreuTJjXiliek+ziyxSmqiWujh/zJoNumQlBZX+Clg8t4tKCC070=
10 | =zMM+
11 | -----END PGP SIGNATURE-----
12 |
--------------------------------------------------------------------------------
/docs/MergeandSort.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/docs/MergeandSort.png
--------------------------------------------------------------------------------
/docs/compListPart.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/docs/compListPart.png
--------------------------------------------------------------------------------
/gradle-app.setting:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | distributionBase=GRADLE_USER_HOME
2 | distributionPath=wrapper/dists
3 | distributionUrl=https\://services.gradle.org/distributions/gradle-7.6.5-bin.zip
4 | zipStoreBase=GRADLE_USER_HOME
5 | zipStorePath=wrapper/dists
6 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "javafbps",
3 | "version": "4.1.12",
4 | "description": "JavaFBP",
5 | "repository": {
6 | "type": "git",
7 | "url": "git+https://github.com/jpaulm/javafbp.git"
8 | },
9 | "keywords": [
10 | "fbp",
11 | "flow-based-programming"
12 | ],
13 | "author": "J. Paul Morrison",
14 | "license": "MIT",
15 | "bugs": {
16 | "url": "https://github.com/jpaulm/javafbp/issues"
17 | },
18 | "homepage": "https://github.com/jpaulm/javafbp",
19 | "dependencies": {
20 | "snyk": "1.1297.1"
21 | },
22 | "snyk": true
23 | }
24 |
--------------------------------------------------------------------------------
/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 | 4.0.0
5 | com.jpaulmorrison
6 | javafbp
7 | 4.1.14
8 | 2016
9 |
10 |
11 | GNU Lesser General Public License, Version 3.0
12 | https://www.gnu.org/licenses/lgpl-3.0.txt
13 |
14 |
15 |
16 |
17 |
18 | com.google.code.gson
19 | gson
20 | 2.13.1
21 | compile
22 |
23 |
24 |
25 |
26 |
27 | 1.8
28 | 1.8
29 |
30 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/renovate.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": [
3 | "config:base"
4 | ],
5 | "automerge": true,
6 | "major": {
7 | "automerge": false
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/core/components/audio/JingleBells.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 |
19 |
20 | package com.jpaulmorrison.fbp.core.components.audio;
21 |
22 |
23 | import com.jpaulmorrison.fbp.core.engine.Component;
24 | import com.jpaulmorrison.fbp.core.engine.ComponentDescription;
25 | import com.jpaulmorrison.fbp.core.engine.OutPort;
26 | import com.jpaulmorrison.fbp.core.engine.OutputPort;
27 |
28 |
29 | /** Generate note/duration pairs for Jingle Bells - 1st voice
30 | **/
31 | @ComponentDescription("Generate note/duration pairs for Jingle Bells - 1st voice")
32 | @OutPort("OUT")
33 | public class JingleBells extends Component {
34 |
35 |
36 | OutputPort _outport;
37 |
38 | int c = 262;
39 |
40 | int d = 294;
41 |
42 | int e = 330;
43 |
44 | int g = 392;
45 |
46 |
47 | int notes[] = { e, e, e, e, e, e, e, g, c, d, e};
48 |
49 | int note = 1000;
50 |
51 | int half = note / 2;
52 |
53 | int quarter = note / 4;
54 |
55 | int eighth = note / 8;
56 |
57 | int durations[] = { quarter, quarter, half, quarter, quarter, half, quarter, quarter, quarter + eighth, eighth, half };
58 |
59 | @Override
60 | protected void execute() {
61 |
62 | for (int i = 0; i < notes.length; i++) {
63 |
64 | int[] intArray = { notes[i], durations[i] };
65 | _outport.send(create(intArray));
66 |
67 | }
68 |
69 | }
70 |
71 | @Override
72 | protected void openPorts() {
73 | _outport = openOutput("OUT");
74 | }
75 | }
76 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/core/components/audio/JingleBells2.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 |
19 |
20 | package com.jpaulmorrison.fbp.core.components.audio;
21 |
22 |
23 | import com.jpaulmorrison.fbp.core.engine.Component;
24 | import com.jpaulmorrison.fbp.core.engine.ComponentDescription;
25 | import com.jpaulmorrison.fbp.core.engine.OutPort;
26 | import com.jpaulmorrison.fbp.core.engine.OutputPort;
27 |
28 |
29 | /** Generate note/duration pairs for Jingle Bells - 2nd voice
30 | **/
31 | @ComponentDescription("Generate note/duration pairs for Jingle Bells - 2nd voice")
32 | @OutPort("OUT")
33 | public class JingleBells2 extends Component {
34 |
35 | OutputPort _outport;
36 |
37 | int c = 262;
38 |
39 | int d = 294;
40 |
41 | int e = 330;
42 |
43 | int g = 392;
44 |
45 |
46 | int notes[] = { c,c,c, c,c,c, c,c, c};
47 |
48 | int note = 1000;
49 |
50 | int half = note / 2;
51 |
52 | int quarter = note / 4;
53 |
54 | int eighth = note / 8;
55 |
56 | int durations[] = { quarter, quarter, half, quarter, quarter, half, half, half, half };
57 |
58 | @Override
59 | protected void execute() {
60 |
61 | for (int i = 0; i < notes.length; i++) {
62 |
63 | int[] intArray = { notes[i], durations[i] };
64 | _outport.send(create(intArray));
65 |
66 | }
67 |
68 | }
69 |
70 | @Override
71 | protected void openPorts() {
72 | _outport = openOutput("OUT");
73 | }
74 | }
75 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/core/components/audio/MixerInput.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 |
19 | package com.jpaulmorrison.fbp.core.components.audio;
20 |
21 |
22 | import com.jpaulmorrison.fbp.core.engine.Component;
23 | import com.jpaulmorrison.fbp.core.engine.ComponentDescription;
24 | import com.jpaulmorrison.fbp.core.engine.OutPort;
25 | import com.jpaulmorrison.fbp.core.engine.OutputPort;
26 |
27 |
28 | /** Miscellaneous Audio Mixer Input
29 | **/
30 | @ComponentDescription("Miscellaneous Audio Mixer Input")
31 | @OutPort("OUT")
32 | public class MixerInput extends Component {
33 |
34 |
35 |
36 | OutputPort _outport;
37 |
38 | int notes[] = { 262 };
39 |
40 | // C
41 |
42 | int durations[] = { 3500 };
43 |
44 | @Override
45 | protected void execute() {
46 |
47 | for (int i = 0; i < notes.length; i++) {
48 |
49 | int[] intArray = { notes[i], durations[i] };
50 | _outport.send(create(intArray));
51 |
52 | }
53 |
54 | }
55 |
56 | @Override
57 | protected void openPorts() {
58 | _outport = openOutput("OUT");
59 | }
60 | }
61 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/core/components/httpurl/LoadURL.java:
--------------------------------------------------------------------------------
1 | package com.jpaulmorrison.fbp.core.components.httpurl;
2 |
3 | import java.io.BufferedReader;
4 | import java.io.InputStream;
5 | import java.io.InputStreamReader;
6 | import java.net.URL;
7 |
8 | import com.jpaulmorrison.fbp.core.engine.Component;
9 | import com.jpaulmorrison.fbp.core.engine.InPort;
10 | import com.jpaulmorrison.fbp.core.engine.InputPort;
11 | import com.jpaulmorrison.fbp.core.engine.OutPort;
12 | import com.jpaulmorrison.fbp.core.engine.OutputPort;
13 | import com.jpaulmorrison.fbp.core.engine.Packet;
14 |
15 | //https://www.codejava.net/java-se/networking/use-httpurlconnection-to-download-file-from-an-http-url
16 |
17 | @InPort(value = "SOURCE", description = "HTMLName")
18 | @OutPort(value = "OUT", description = "HTML")
19 |
20 | public class LoadURL extends Component {
21 |
22 | private InputPort inPort;
23 | private OutputPort outPort;
24 |
25 | protected void execute() throws Exception {
26 |
27 | Packet> pp = inPort.receive();
28 |
29 | String fileURL = (String) pp.getContent();
30 | drop(pp);
31 | inPort.close();
32 |
33 |
34 | // https://stackoverflow.com/questions/2793168/reading-httpurlconnection-inputstream-manual-buffer-or-bufferedinputstream
35 |
36 | URL url = new URL(fileURL);
37 |
38 | //HttpURLConnection urlConn = (HttpURLConnection) url.openConnection();
39 |
40 | InputStream in = url.openStream();
41 | BufferedReader reader = new BufferedReader(new InputStreamReader(in));
42 | StringBuilder result = new StringBuilder();
43 | String line = null;
44 | while((line = reader.readLine()) != null) {
45 | result.append(line);
46 | }
47 | outPort.send(create(result.toString()));
48 | reader.close();
49 | }
50 |
51 | @Override
52 | protected void openPorts() {
53 | inPort = openInput("SOURCE");
54 | outPort = openOutput("OUT");
55 |
56 | }
57 | }
58 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/core/components/parsexml/Comment.java:
--------------------------------------------------------------------------------
1 | package com.jpaulmorrison.fbp.core.components.parsexml;
2 |
3 | public class Comment {
4 | Object data = null;
5 |
6 | Comment(Object newContent) {
7 | data = newContent;
8 | }
9 |
10 | }
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/core/components/parsexml/Control.java:
--------------------------------------------------------------------------------
1 | package com.jpaulmorrison.fbp.core.components.parsexml;
2 |
3 |
4 | public class Control{
5 |
6 | Object data = null;
7 |
8 | Control(Object newContent) {
9 | data = newContent;
10 | }
11 |
12 | }
13 |
14 |
15 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/core/components/parsexml/End.java:
--------------------------------------------------------------------------------
1 | package com.jpaulmorrison.fbp.core.components.parsexml;
2 |
3 | public class End {
4 | Object data = null;
5 |
6 | End(Object newContent) {
7 | data = newContent;
8 | }
9 |
10 | }
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/core/components/parsexml/Solo.java:
--------------------------------------------------------------------------------
1 | package com.jpaulmorrison.fbp.core.components.parsexml;
2 |
3 | public class Solo {
4 | Object data = null;
5 |
6 | Solo(Object newContent) {
7 | data = newContent;
8 | }
9 |
10 | }
11 |
12 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/core/components/parsexml/Start.java:
--------------------------------------------------------------------------------
1 | package com.jpaulmorrison.fbp.core.components.parsexml;
2 |
3 | public class Start {
4 | Object data = null;
5 |
6 | Start(Object newContent) {
7 | data = newContent;
8 | }
9 |
10 | }
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/core/components/parsexml/Text.java:
--------------------------------------------------------------------------------
1 | package com.jpaulmorrison.fbp.core.components.parsexml;
2 |
3 | public class Text {
4 | Object data = null;
5 |
6 | Text(Object newContent) {
7 | data = newContent;
8 | }
9 |
10 | }
11 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/core/components/routing/ConcatStreams.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 | package com.jpaulmorrison.fbp.core.components.routing;
19 |
20 |
21 | import com.jpaulmorrison.fbp.core.engine.Component;
22 | import com.jpaulmorrison.fbp.core.engine.ComponentDescription;
23 | import com.jpaulmorrison.fbp.core.engine.InPort;
24 | import com.jpaulmorrison.fbp.core.engine.InputPort;
25 | import com.jpaulmorrison.fbp.core.engine.OutPort;
26 | import com.jpaulmorrison.fbp.core.engine.OutputPort;
27 | import com.jpaulmorrison.fbp.core.engine.Packet;
28 |
29 |
30 | /** Component to ConcatStreams two or more streams of packets
31 | */
32 |
33 | @ComponentDescription("ConcatStreams two or more streams of packets")
34 | @OutPort("OUT")
35 | @InPort(value = "IN", arrayPort = true)
36 | public class ConcatStreams extends Component {
37 |
38 |
39 |
40 | private InputPort[] inportArray;
41 |
42 | private OutputPort outport;
43 |
44 | @SuppressWarnings("rawtypes")
45 | @Override
46 | protected void execute() {
47 |
48 | int no = inportArray.length;
49 |
50 | Packet p;
51 | for (int i = 0; i < no; i++) {
52 | while ((p = inportArray[i].receive()) != null) {
53 | outport.send(p);
54 | }
55 |
56 | }
57 | }
58 |
59 | @Override
60 | protected void openPorts() {
61 |
62 | inportArray = openInputArray("IN");
63 | // inport.setType(Object.class);
64 |
65 | outport = openOutput("OUT");
66 |
67 | }
68 | }
69 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/core/components/routing/Copy.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 |
19 | package com.jpaulmorrison.fbp.core.components.routing;
20 |
21 |
22 | import com.jpaulmorrison.fbp.core.engine.Component;
23 | import com.jpaulmorrison.fbp.core.engine.ComponentDescription;
24 | import com.jpaulmorrison.fbp.core.engine.InPort;
25 | import com.jpaulmorrison.fbp.core.engine.InputPort;
26 | import com.jpaulmorrison.fbp.core.engine.OutPort;
27 | import com.jpaulmorrison.fbp.core.engine.OutputPort;
28 | import com.jpaulmorrison.fbp.core.engine.Packet;
29 |
30 |
31 | /**
32 | * Component to copy all incoming packets - mostly used for debugging purposes.
33 | */
34 | @ComponentDescription("Copy all incoming packets to output")
35 | @OutPort("OUT")
36 | @InPort("IN")
37 | public class Copy extends Component {
38 |
39 |
40 |
41 | private InputPort inport;
42 |
43 | private OutputPort outport;
44 |
45 | @Override
46 | protected void execute() {
47 | Packet> p;
48 | while ((p = inport.receive()) != null) {
49 | outport.send(p);
50 | }
51 |
52 | }
53 |
54 | @Override
55 | protected void openPorts() {
56 | inport = openInput("IN");
57 |
58 | outport = openOutput("OUT");
59 | }
60 | }
61 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/core/components/routing/Crash.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 | package com.jpaulmorrison.fbp.core.components.routing;
19 |
20 |
21 | import com.jpaulmorrison.fbp.core.engine.Component;
22 | import com.jpaulmorrison.fbp.core.engine.ComponentDescription;
23 | import com.jpaulmorrison.fbp.core.engine.InPort;
24 | import com.jpaulmorrison.fbp.core.engine.InputPort;
25 | import com.jpaulmorrison.fbp.core.engine.Packet;
26 |
27 |
28 | @ComponentDescription("Force crash")
29 | @InPort("IN")
30 | public class Crash extends Component {
31 |
32 | /**
33 | * Force crash
34 | *
35 | */
36 | private InputPort inport;
37 |
38 | @SuppressWarnings("null")
39 | @Override
40 | protected void execute() {
41 | Packet> p = inport.receive();
42 | Object foo = new Object();
43 | System.err.println("Foo");
44 | foo = null;
45 | System.err.println(foo.toString());
46 | drop(p);
47 |
48 | }
49 |
50 | @Override
51 | protected void openPorts() {
52 | inport = openInput("IN");
53 | // inport.setType(Object.class);
54 |
55 | }
56 | }
57 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/core/components/routing/Discard.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 | package com.jpaulmorrison.fbp.core.components.routing;
19 |
20 |
21 | import com.jpaulmorrison.fbp.core.engine.Component;
22 | import com.jpaulmorrison.fbp.core.engine.ComponentDescription;
23 | import com.jpaulmorrison.fbp.core.engine.InPort;
24 | import com.jpaulmorrison.fbp.core.engine.InputPort;
25 | import com.jpaulmorrison.fbp.core.engine.Packet;
26 |
27 |
28 | /**
29 | * Component to discard all incoming packets - mostly used for debugging
30 | * purposes.
31 | */
32 |
33 | @ComponentDescription("Discards all incoming packets")
34 | @InPort(value = "IN", description = "Stream of packets to be discarded")
35 | public class Discard extends Component {
36 |
37 |
38 | private InputPort inport;
39 |
40 | @Override
41 | protected void execute() {
42 | Packet> p = inport.receive();
43 | // while ((p = inport.receive()) != null) {
44 | drop(p);
45 | // }
46 |
47 | }
48 |
49 | @Override
50 | protected void openPorts() {
51 | inport = openInput("IN");
52 |
53 | }
54 | }
55 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/core/components/routing/Inject.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 | package com.jpaulmorrison.fbp.core.components.routing;
19 |
20 |
21 | import com.jpaulmorrison.fbp.core.engine.Component;
22 | import com.jpaulmorrison.fbp.core.engine.ComponentDescription;
23 | import com.jpaulmorrison.fbp.core.engine.InPort;
24 | import com.jpaulmorrison.fbp.core.engine.InputPort;
25 | import com.jpaulmorrison.fbp.core.engine.OutPort;
26 | import com.jpaulmorrison.fbp.core.engine.OutputPort;
27 | import com.jpaulmorrison.fbp.core.engine.Packet;
28 |
29 |
30 | /**
31 | * Component to inject an IIP String as an IP
32 | */
33 | @ComponentDescription("Inject CONST from IIP to the IP OUT")
34 | @OutPort("OUT")
35 | @InPort("CONST")
36 | public class Inject extends Component {
37 |
38 |
39 |
40 | private OutputPort outport;
41 |
42 | private InputPort cport;
43 |
44 | @Override
45 | protected void execute() {
46 | Packet cp = cport.receive();
47 | if (cp == null) {
48 | return;
49 | }
50 | cport.close();
51 | String c = (String) cp.getContent();
52 | drop(cp);
53 | Packet pOut = create(c);
54 | if (!outport.isClosed()) {
55 | outport.send(pOut);
56 | }
57 | }
58 |
59 | @Override
60 | protected void openPorts() {
61 | outport = openOutput("OUT");
62 | cport = openInput("CONST");
63 | }
64 | }
65 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/core/components/routing/Kick.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 | package com.jpaulmorrison.fbp.core.components.routing;
19 |
20 |
21 | import com.jpaulmorrison.fbp.core.engine.Component;
22 | import com.jpaulmorrison.fbp.core.engine.ComponentDescription;
23 | import com.jpaulmorrison.fbp.core.engine.OutPort;
24 | import com.jpaulmorrison.fbp.core.engine.OutputPort;
25 | import com.jpaulmorrison.fbp.core.engine.Packet;
26 |
27 |
28 | /** Component to generate a single packet containing blank string - mostly used for debugging.
29 | */
30 | @ComponentDescription("Outputs single packet containing blank string")
31 | @OutPort(value = "OUT", description = "Single packet containing blank", type = String.class)
32 | public class Kick extends Component {
33 |
34 |
35 | private OutputPort outport;
36 |
37 | @Override
38 | protected void execute() {
39 |
40 | Packet p = create(" ");
41 | outport.send(p);
42 |
43 | }
44 |
45 | @Override
46 | protected void openPorts() {
47 | outport = openOutput("OUT");
48 | }
49 | }
50 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/core/components/routing/KickWD.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 |
19 | package com.jpaulmorrison.fbp.core.components.routing;
20 |
21 | import com.jpaulmorrison.fbp.core.engine.Component;
22 | import com.jpaulmorrison.fbp.core.engine.ComponentDescription;
23 | import com.jpaulmorrison.fbp.core.engine.InPort;
24 | import com.jpaulmorrison.fbp.core.engine.InputPort;
25 | import com.jpaulmorrison.fbp.core.engine.OutPort;
26 | import com.jpaulmorrison.fbp.core.engine.OutputPort;
27 | import com.jpaulmorrison.fbp.core.engine.Packet;
28 |
29 |
30 | /**
31 | * Component to kick-start processing, emitting an IP with specified data
32 | */
33 | @ComponentDescription("Kick with data")
34 | @OutPort(value = "OUT", description = "Generated packets", type = String.class)
35 | @InPort(value = "SOURCE", description = "Data string", type = String.class)
36 |
37 | public class KickWD extends Component {
38 |
39 |
40 | private OutputPort outport;
41 |
42 | private InputPort source;
43 |
44 | @Override
45 | protected void execute() {
46 | Packet rp = source.receive();
47 | if (rp != null)
48 | outport.send(rp);
49 | }
50 |
51 | @Override
52 | protected void openPorts() {
53 |
54 | outport = openOutput("OUT");
55 |
56 | source = openInput("SOURCE");
57 |
58 | }
59 | }
60 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/core/components/routing/Output.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 | package com.jpaulmorrison.fbp.core.components.routing;
19 |
20 |
21 | import com.jpaulmorrison.fbp.core.engine.Component;
22 | import com.jpaulmorrison.fbp.core.engine.InPort;
23 | import com.jpaulmorrison.fbp.core.engine.InputPort;
24 | import com.jpaulmorrison.fbp.core.engine.Packet;
25 | /**
26 | *
27 | *
28 | * This component displays the content of incoming IPs; open and close brackets
29 | * are shown with their level numbers - the first open bracket is shown as OPEN(1)
30 | *
31 | * @author Sven Steinseifer - 2010
32 | */
33 |
34 | @InPort("IN")
35 | public class Output extends Component {
36 |
37 | private InputPort inputPort;
38 |
39 | @Override
40 | protected void execute() {
41 | Packet p;
42 | int level = 1;
43 | while ((p = inputPort.receive()) != null) {
44 | switch (p.getType()) {
45 | case Packet.OPEN:
46 | System.out.println("OPEN(" + level + ")");
47 | level++;
48 | break;
49 | case Packet.CLOSE:
50 | level--;
51 | System.out.println("CLOSE(" + level + ")");
52 | break;
53 | default:
54 | System.out.println(p.getContent());
55 | }
56 | drop(p);
57 | }
58 | }
59 |
60 | @Override
61 | protected void openPorts() {
62 | inputPort = openInput("IN");
63 | }
64 |
65 | }
66 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/core/components/routing/Passthru.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 |
19 | package com.jpaulmorrison.fbp.core.components.routing;
20 |
21 |
22 | import com.jpaulmorrison.fbp.core.engine.Component;
23 | import com.jpaulmorrison.fbp.core.engine.ComponentDescription;
24 | import com.jpaulmorrison.fbp.core.engine.InPort;
25 | import com.jpaulmorrison.fbp.core.engine.InputPort;
26 | import com.jpaulmorrison.fbp.core.engine.OutPort;
27 | import com.jpaulmorrison.fbp.core.engine.OutputPort;
28 | import com.jpaulmorrison.fbp.core.engine.Packet;
29 |
30 |
31 | /**
32 | * Pass a stream of packets to an output stream.
33 | *
34 | */
35 | @ComponentDescription("Pass a stream of packets to an output stream")
36 | @OutPort("OUT")
37 | @InPort("IN")
38 | public class Passthru extends Component {
39 |
40 |
41 | private InputPort inport;
42 |
43 | private OutputPort outport;
44 |
45 | @Override
46 | protected void execute() {
47 |
48 | // make it a non-looper - for testing
49 |
50 | Packet p = inport.receive();
51 | outport.send(p);
52 | }
53 |
54 | @Override
55 | protected void openPorts() {
56 |
57 | inport = openInput("IN");
58 |
59 | outport = openOutput("OUT");
60 |
61 | }
62 | }
63 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/core/components/text/ConcatString.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 | package com.jpaulmorrison.fbp.core.components.text;
19 |
20 |
21 | import com.jpaulmorrison.fbp.core.engine.*;
22 |
23 |
24 | /** Component to ConcatStreams all packets in the input stream into
25 | * one long String, which is then sent to the output port.
26 | */
27 | @ComponentDescription("ConcatStreams all packets in the input stream into one long String")
28 | @OutPort("OUT")
29 | @InPort(value = "IN", arrayPort = true)
30 | public class ConcatString extends Component {
31 |
32 |
33 |
34 | private InputPort inport;
35 |
36 | private OutputPort outport;
37 |
38 | @SuppressWarnings("unchecked")
39 | @Override
40 | protected void execute() {
41 |
42 | String target = "";
43 | Packet p;
44 | while ((p = (Packet) inport.receive()) != null) {
45 | String s = p.getContent();
46 | target = target + s;
47 | drop(p);
48 | }
49 | Packet out = create(target);
50 | outport.send(out);
51 |
52 | }
53 |
54 | @Override
55 | protected void openPorts() {
56 |
57 | inport = openInput("IN");
58 |
59 | outport = openOutput("OUT");
60 |
61 | }
62 | }
63 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/core/engine/Chain.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 |
19 | package com.jpaulmorrison.fbp.core.engine;
20 |
21 |
22 | import java.util.LinkedList;
23 |
24 |
25 | /** This is a package-private class which is just used to hold
26 | * chains attached to Packets. There are no methods here,
27 | * since all the work is being done in class Packet.
28 | * This could have been an inner class of Packet.
29 | */
30 |
31 | final class Chain {
32 |
33 |
34 |
35 | final LinkedList> members;
36 |
37 | protected final String name;
38 |
39 | Chain(final String n) {
40 | name = n;
41 | members = new LinkedList>();
42 | }
43 | }
44 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/core/engine/Comparator.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 |
19 | package com.jpaulmorrison.fbp.core.engine;
20 |
21 |
22 | /**
23 | * A clone of java.util.Comparator from JDK 1.2.
24 | * @see java.util.Comparator
25 | **/
26 |
27 | public interface Comparator {
28 |
29 | /**
30 | * @param first object to be compared
31 | * @param second object to be compared
32 | * @return -1 if first lt second, 0 if first == second, 1 if first gt second
33 | **/
34 |
35 |
36 | int compareTo(Object first, Object second);
37 | }
38 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/core/engine/ComponentDescription.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 |
19 | package com.jpaulmorrison.fbp.core.engine;
20 |
21 |
22 | import java.lang.annotation.Retention;
23 | import java.lang.annotation.RetentionPolicy;
24 |
25 |
26 | @Retention(RetentionPolicy.RUNTIME)
27 | public @interface ComponentDescription {
28 |
29 | /***
30 | *
31 | * Annotation for components, describing function of component - this will be displayed
32 | * by DrawFBP's Display Port Info command
33 | *
34 | */
35 |
36 |
37 | String value() default "";
38 | }
39 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/core/engine/ComponentException.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | *
18 | * ====================================================================================
19 | *
20 | * Copied from http://www.java-tips.org/java-se-tips/java.lang/creating-application-specific-exceptions.html
21 | *
22 | * Thanks!
23 | */
24 |
25 | package com.jpaulmorrison.fbp.core.engine;
26 |
27 |
28 | public class ComponentException extends Exception {
29 |
30 | private int intError;
31 |
32 | public ComponentException(final int intErrNo) {
33 | intError = intErrNo;
34 | }
35 |
36 | public ComponentException(final String strMessage) {
37 | super(strMessage);
38 | }
39 |
40 | @Override
41 | public String toString() {
42 | return "Component exception - value: " + intError;
43 | }
44 |
45 | int getValue() {
46 | return intError;
47 | }
48 | }
49 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/core/engine/DummyMain.java:
--------------------------------------------------------------------------------
1 | package com.jpaulmorrison.fbp.core.engine;
2 |
3 | public class DummyMain {
4 |
5 | public static void main(String[] args) {
6 | // TODO Auto-generated method stub
7 | System.out.println("Dummy main - should not be invoked");
8 | }
9 |
10 | }
11 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/core/engine/FlowError.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 |
19 | package com.jpaulmorrison.fbp.core.engine;
20 |
21 |
22 | /**
23 | * Instances of this class are thrown whenever a programming error
24 | * in a flow network is detected. Nobody is expected to catch these,
25 | * because they are considered indications of design errors, even though
26 | * detected only at run-time.
27 | **/
28 |
29 | public class FlowError extends RuntimeException {
30 |
31 | /**
32 | * Constructs a new FlowError with a useful (but non-localized)
33 | * message as its text. FlowErrors without texts are not allowed, as
34 | * these are considered bad practice.
35 | * @param text a description of the error
36 | **/
37 |
38 | static final long serialVersionUID = 362498820763181265L;
39 |
40 |
41 |
42 | FlowError(final String text) {
43 | super(text);
44 | }
45 |
46 | /**
47 | * A convenience method which constructs a new FlowError and
48 | * throws it at once, typically never returning.
49 | * @param text a description of the error
50 | **/
51 |
52 | public static void complain(final String text) {
53 | throw new FlowError(text);
54 | }
55 | }
56 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/core/engine/InPort.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 |
19 | package com.jpaulmorrison.fbp.core.engine;
20 |
21 |
22 | import java.lang.annotation.Retention;
23 | import java.lang.annotation.RetentionPolicy;
24 |
25 |
26 | @Retention(RetentionPolicy.RUNTIME)
27 | public @interface InPort {
28 |
29 | /***
30 | *
31 | * Annotation for component, describing individual input port - this will be displayed
32 | * by DrawFBP's Display Port Info command
33 | *
34 | */
35 |
36 |
37 |
38 | String value() default ""; // either value or valueList must be present
39 |
40 | int setDimension() default 0;
41 |
42 | String[] valueList() default {};
43 |
44 | boolean arrayPort() default false;
45 |
46 | boolean fixedSize() default false; // only allowed if arrayPort
47 |
48 | String description() default "";
49 |
50 | Class type() default Object.class; // type of object expected on this input port
51 |
52 | boolean optional() default false;
53 |
54 |
55 | }
56 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/core/engine/InPorts.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 |
19 | package com.jpaulmorrison.fbp.core.engine;
20 |
21 |
22 | import java.lang.annotation.Retention;
23 | import java.lang.annotation.RetentionPolicy;
24 |
25 | /***
26 | *
27 | * Annotation for component, describing multiple input ports on a component
28 | *
29 | */
30 | @Retention(RetentionPolicy.RUNTIME)
31 | public @interface InPorts {
32 |
33 |
34 | InPort[] value();
35 |
36 | }
37 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/core/engine/License.txt:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/core/engine/MustRun.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 |
19 | package com.jpaulmorrison.fbp.core.engine;
20 |
21 |
22 | import java.lang.annotation.Retention;
23 | import java.lang.annotation.RetentionPolicy;
24 |
25 |
26 | @Retention(RetentionPolicy.RUNTIME)
27 | public @interface MustRun {
28 |
29 | /***
30 | *
31 | * Annotation for component, specifying "must run" attribute
32 | *
33 | */
34 |
35 |
36 | boolean value() default true;
37 | }
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/core/engine/NullOutputPort.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 |
19 | package com.jpaulmorrison.fbp.core.engine;
20 |
21 |
22 | public class NullOutputPort extends OutputPort
23 |
24 | /**
25 | * This class is an internal control block used while processing a component's annotations;
26 | * it is also used for checking 'connect' invocations in network definitions
27 | *
28 | */
29 |
30 | {
31 | // The send function.
32 | @Override
33 | public void send(final Packet> packet) {
34 | /*sender.drop(packet);*/
35 | // do nothing - experimental
36 | }
37 |
38 | @Override
39 | public void close() {
40 | // do nothing
41 | }
42 |
43 | /**
44 | * This method returns true if the output port is connected
45 | *
46 | * @return boolean
47 | */
48 | @Override
49 | public boolean isConnected() {
50 | return false;
51 | }
52 |
53 | }
54 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/core/engine/OutArray.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 | package com.jpaulmorrison.fbp.core.engine;
19 |
20 |
21 | /**
22 | * This class is an internal control block used while processing a component's annotations;
23 | * it is also used for checking 'connect' invocations in network definitions
24 | *
25 | */
26 |
27 | public class OutArray extends OutputPort {
28 |
29 | //ArrayList al = null;
30 |
31 | boolean fixedSize;
32 | }
33 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/core/engine/OutPort.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 |
19 | package com.jpaulmorrison.fbp.core.engine;
20 |
21 |
22 | import java.lang.annotation.Retention;
23 | import java.lang.annotation.RetentionPolicy;
24 |
25 |
26 | @Retention(RetentionPolicy.RUNTIME)
27 | public @interface OutPort {
28 |
29 | /***
30 | *
31 | * Annotation for component, describing individual output port - this will be displayed
32 | * by DrawFBP's Display Port Info command
33 | *
34 | */
35 |
36 |
37 | String value() default ""; // either value or valueList must be present
38 |
39 | int setDimension() default 0;
40 |
41 | String[] valueList() default {};
42 |
43 | boolean arrayPort() default false;
44 |
45 | boolean optional() default false;
46 |
47 | boolean fixedSize() default false; // only relevant if arrayPort - cannot coexist with optional
48 |
49 | String description() default "";
50 |
51 | Class type() default Object.class; // type of object generated from this input port
52 |
53 | }
54 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/core/engine/OutPorts.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 |
19 | package com.jpaulmorrison.fbp.core.engine;
20 |
21 |
22 | import java.lang.annotation.Retention;
23 | import java.lang.annotation.RetentionPolicy;
24 |
25 |
26 | @Retention(RetentionPolicy.RUNTIME)
27 | public @interface OutPorts {
28 |
29 | /***
30 | *
31 | * Annotation for component, describing multiple output ports on a component
32 | *
33 | */
34 |
35 |
36 | OutPort[] value();
37 |
38 | }
39 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/core/engine/Priority.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 |
19 | package com.jpaulmorrison.fbp.core.engine;
20 |
21 |
22 | import java.lang.annotation.Retention;
23 | import java.lang.annotation.RetentionPolicy;
24 |
25 |
26 | @Retention(RetentionPolicy.RUNTIME)
27 | public @interface Priority {
28 |
29 |
30 | int value();
31 |
32 | }
33 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/core/engine/SelfStarting.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 |
19 | package com.jpaulmorrison.fbp.core.engine;
20 |
21 |
22 | import java.lang.annotation.Retention;
23 | import java.lang.annotation.RetentionPolicy;
24 |
25 |
26 | @Retention(RetentionPolicy.RUNTIME)
27 | @interface SelfStarting {
28 |
29 | /***
30 | *
31 | * Package private annotation for component, specifying "self-starting" attribute - the process is to "self-start" even if it has
32 | * input ports. This is only used for engine.DispIPCounts.java
33 | *
34 | */
35 |
36 | boolean value() default true;
37 | }
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/core/engine/SubOut.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 |
19 | package com.jpaulmorrison.fbp.core.engine;
20 |
21 |
22 | /** Look after output from subnet - added for subnet support
23 | */
24 | @InPorts({ @InPort("IN"), @InPort("NAME") })
25 | public class SubOut extends Component {
26 |
27 |
28 | private InputPort inport, nameport;
29 |
30 | private OutputPort outport;
31 |
32 | @Override
33 | protected void execute()/* throws Throwable*/{
34 | Packet> np = nameport.receive();
35 | if (np == null) {
36 | return;
37 | }
38 | nameport.close();
39 | String pname = (String) np.getContent();
40 | drop(np);
41 |
42 | outport = mother.getOutports().get(pname);
43 | mother.traceFuncs(getName() + ": Accessing output port: " + outport.getName());
44 | outport.setSender(this);
45 | Packet> p;
46 | while ((p = inport.receive()) != null) {
47 | outport.send(p);
48 |
49 | }
50 |
51 | mother.traceFuncs(getName() + ": Releasing output port: " + outport.getName());
52 | outport = null;
53 | }
54 |
55 | @Override
56 | protected void openPorts() {
57 |
58 | nameport = openInput("NAME");
59 | inport = openInput("IN");
60 | }
61 | }
62 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/core/engine/SubOutSS.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 |
19 | package com.jpaulmorrison.fbp.core.engine;
20 |
21 |
22 | /** Look after output from subnet - added for subnet support
23 | * Differs from SubOut in that it adds an open bracket at the beginning, and a
24 | * close bracket at the end
25 | */
26 | @InPorts({ @InPort("IN"), @InPort("NAME") })
27 | public class SubOutSS extends Component {
28 |
29 |
30 | private InputPort inport, nameport;
31 |
32 | private OutputPort outport;
33 |
34 | @Override
35 | protected void execute()/* throws Throwable*/{
36 | Packet> np = nameport.receive();
37 | if (np == null) {
38 | return;
39 | }
40 | nameport.close();
41 | String pname = (String) np.getContent();
42 | drop(np);
43 |
44 | outport = mother.getOutports().get(pname);
45 | mother.traceFuncs(getName() + ": Accessing output port: " + outport.getName());
46 | outport.setSender(this);
47 | Packet> p;
48 | p = create(Packet.OPEN, "");
49 | outport.send(p);
50 |
51 | while ((p = inport.receive()) != null) {
52 | outport.send(p);
53 |
54 | }
55 | p = create(Packet.CLOSE, "");
56 | outport.send(p);
57 |
58 | mother.traceFuncs(getName() + ": Releasing output port: " + outport.getName());
59 | outport = null;
60 | }
61 |
62 | @Override
63 | protected void openPorts() {
64 |
65 | nameport = openInput("NAME");
66 | inport = openInput("IN");
67 | }
68 | }
69 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/core/engine/TimeoutHandler.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 |
19 | package com.jpaulmorrison.fbp.core.engine;
20 |
21 |
22 | public class TimeoutHandler {
23 |
24 | /**
25 | * This class is used by the 'longWaitStart' method which can be used by components
26 | *
27 | */
28 |
29 | private long dur;
30 |
31 | private final Component comp;
32 |
33 | public TimeoutHandler(final double intvl, final Component c) {
34 |
35 | double ms = intvl * 1000.0 + 500.0;
36 | dur = new Double(ms).longValue(); // convert to msecs
37 | comp = c;
38 | c.timeout = this;
39 | }
40 |
41 | void dispose(final Component c) {
42 | synchronized (c.network) {
43 | c.network.timeouts.remove(c);
44 | }
45 | c.timeout = null;
46 | c.status = Component.StatusValues.ACTIVE;
47 | }
48 |
49 | void decrement(final long freq) {
50 | dur -= freq; // reduce by frequency, in msecs
51 | if (dur < 0) {
52 | FlowError.complain("Component " + comp.getName() + " timed out");
53 | }
54 |
55 | }
56 |
57 | }
58 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/core/engine/VersionAndTimestamp.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 | package com.jpaulmorrison.fbp.core.engine;
19 |
20 |
21 | public final class VersionAndTimestamp {
22 |
23 | /**
24 | * This class is simply used to record the version number and timestamp of the last update
25 | *
26 | */
27 |
28 | private static String version = "JavaFBP - version 4.1.12";
29 |
30 | private static String date = "June 30, 2021";
31 |
32 | static String getVersion() {
33 | return version;
34 | }
35 |
36 | static String getDate() {
37 | return date;
38 | }
39 | }
40 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/resourcekit/examples/components/BuildBlob.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 |
19 | package com.jpaulmorrison.fbp.resourcekit.examples.components;
20 |
21 |
22 | import com.jpaulmorrison.fbp.core.engine.Component;
23 | import com.jpaulmorrison.fbp.core.engine.ComponentDescription;
24 | import com.jpaulmorrison.fbp.core.engine.InPort;
25 | import com.jpaulmorrison.fbp.core.engine.InputPort;
26 | import com.jpaulmorrison.fbp.core.engine.OutPort;
27 | import com.jpaulmorrison.fbp.core.engine.OutputPort;
28 | import com.jpaulmorrison.fbp.core.engine.Packet;
29 |
30 |
31 | /**
32 | * Component to build "blob" from incoming records.
33 | */
34 | @ComponentDescription("Build blob from incoming records")
35 | @OutPort("OUT")
36 | @InPort("IN")
37 | public class BuildBlob extends Component {
38 |
39 |
40 | private InputPort inport;
41 |
42 | private OutputPort outport;
43 |
44 | @Override
45 | protected void execute() {
46 | Packet p;
47 | String blob = "";
48 | while ((p = inport.receive()) != null) {
49 | String s = (String) p.getContent();
50 | blob += s + " ";
51 | drop(p);
52 | }
53 | outport.send(create(blob));
54 | }
55 |
56 | @Override
57 | protected void openPorts() {
58 | inport = openInput("IN");
59 |
60 | outport = openOutput("OUT");
61 | }
62 | }
63 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/resourcekit/examples/components/ChainOps.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 | package com.jpaulmorrison.fbp.resourcekit.examples.components;
19 |
20 |
21 | import com.jpaulmorrison.fbp.core.engine.Component;
22 | import com.jpaulmorrison.fbp.core.engine.OutPort;
23 | import com.jpaulmorrison.fbp.core.engine.OutputPort;
24 | import com.jpaulmorrison.fbp.core.engine.Packet;
25 |
26 | /**
27 | * Component to test chaining API calls
28 | *
29 | */
30 |
31 | @OutPort("OUT")
32 | public class ChainOps extends Component {
33 |
34 |
35 | private OutputPort outputPort;
36 |
37 | @Override
38 | protected void openPorts() {
39 | outputPort = openOutput("OUT");
40 | }
41 |
42 | @Override
43 | protected void execute() {
44 | Packet a = create("a");
45 | Packet b = create("b");
46 | Packet c = create("c");
47 | Packet d = create("d");
48 |
49 | attach(a, "Chain1", b);
50 | attach(b, "Chain1", c);
51 | attach(b, "Chain1", d);
52 | detach(b, "Chain1", c);
53 |
54 | detach(a, "Chain1", b);
55 | outputPort.send(b);
56 | outputPort.send(a);
57 |
58 | outputPort.send(c);
59 | }
60 | }
61 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/resourcekit/examples/components/CheckForDupNames.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 |
19 | package com.jpaulmorrison.fbp.resourcekit.examples.components;
20 |
21 |
22 | import java.util.HashMap;
23 |
24 | import com.jpaulmorrison.fbp.core.engine.Component;
25 | import com.jpaulmorrison.fbp.core.engine.ComponentDescription;
26 | import com.jpaulmorrison.fbp.core.engine.InPort;
27 | import com.jpaulmorrison.fbp.core.engine.InputPort;
28 | import com.jpaulmorrison.fbp.core.engine.Packet;
29 |
30 |
31 | /** Component to check for duplicate names in GEDCOM files
32 | */
33 | @ComponentDescription("Check for duplicate names in GEDCOM files")
34 | @InPort("IN")
35 | public class CheckForDupNames extends Component {
36 |
37 |
38 | private InputPort inport;
39 |
40 | @Override
41 | protected void execute() {
42 |
43 | Packet p;
44 |
45 | HashMap map = new HashMap();
46 | String str;
47 | String key;
48 |
49 | while ((p = inport.receive()) != null) {
50 | str = (String) p.getContent();
51 | if (str.substring(0, 6).equals("1 NAME")) {
52 | key = str.substring(7).trim();
53 | if (map.containsKey(key)) {
54 | System.out.println("Duplicate name: " + key);
55 | } else {
56 | map.put(key, "Y");
57 | }
58 | }
59 | drop(p);
60 | }
61 |
62 | }
63 |
64 | @Override
65 | protected void openPorts() {
66 |
67 | inport = openInput("IN");
68 |
69 | }
70 | }
71 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/resourcekit/examples/components/GenSubStreams.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 |
19 |
20 | package com.jpaulmorrison.fbp.resourcekit.examples.components;
21 |
22 |
23 | /* Sven Steinseifer - 2010 */
24 |
25 | import com.jpaulmorrison.fbp.core.engine.Component;
26 | import com.jpaulmorrison.fbp.core.engine.OutPort;
27 | import com.jpaulmorrison.fbp.core.engine.OutputPort;
28 | import com.jpaulmorrison.fbp.core.engine.Packet;
29 |
30 |
31 | @OutPort("OUT")
32 | public class GenSubStreams extends Component {
33 |
34 | OutputPort outputPort;
35 |
36 | @Override
37 | protected void execute() {
38 | outputPort.send(create(Packet.OPEN, "OPEN(1)"));
39 | outputPort.send(create("A"));
40 | outputPort.send(create(Packet.OPEN, "OPEN(2)"));
41 | outputPort.send(create("B"));
42 | outputPort.send(create(Packet.CLOSE, "CLOSE(2)"));
43 | outputPort.send(create(Packet.CLOSE, "CLOSE(1)"));
44 | outputPort.close();
45 | }
46 |
47 | @Override
48 | protected void openPorts() {
49 | outputPort = openOutput("OUT");
50 | }
51 |
52 | }
53 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/resourcekit/examples/components/GenerateSlowly.java:
--------------------------------------------------------------------------------
1 | package com.jpaulmorrison.fbp.resourcekit.examples.components;
2 |
3 |
4 | import com.jpaulmorrison.fbp.core.engine.Component;
5 | import com.jpaulmorrison.fbp.core.engine.InPort;
6 | import com.jpaulmorrison.fbp.core.engine.InputPort;
7 | import com.jpaulmorrison.fbp.core.engine.OutPort;
8 | import com.jpaulmorrison.fbp.core.engine.OutputPort;
9 | import com.jpaulmorrison.fbp.core.engine.Packet;
10 |
11 | @InPort(value = "CONFIG", optional = true)
12 | @OutPort("OUT")
13 | public class GenerateSlowly extends Component {
14 |
15 | private InputPort cfgPort;
16 | private OutputPort outputPort;
17 |
18 | /**
19 | * @see com.jpaulmorrison.fbp.core.engine.Component#execute()
20 | *
21 | * {@inheritDoc}
22 | */
23 | @Override
24 | protected void execute() throws Exception {
25 |
26 | long intvl = 1000;
27 | Packet p = cfgPort.receive();
28 | if (p != null) {
29 | intvl = Long.parseLong((String)p.getContent());
30 | }
31 | for (int i = 0; i < 100000; i++) {
32 | String s = Integer.toString(i);
33 | outputPort.send(create(s));
34 | Thread.sleep(1000);
35 | }
36 |
37 | }
38 |
39 | /**
40 | * @see com.jpaulmorrison.fbp.core.engine.Component#openPorts()
41 | *
42 | * {@inheritDoc}
43 | */
44 | @Override
45 | protected void openPorts() {
46 | cfgPort = openInput("CONFIG");
47 | outputPort = openOutput("OUT");
48 |
49 | }
50 |
51 | }
52 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/resourcekit/examples/components/JFilter.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 |
19 |
20 | package com.jpaulmorrison.fbp.resourcekit.examples.components;
21 |
22 |
23 | import com.jpaulmorrison.fbp.core.engine.Component;
24 | import com.jpaulmorrison.fbp.core.engine.ComponentDescription;
25 | import com.jpaulmorrison.fbp.core.engine.InPort;
26 | import com.jpaulmorrison.fbp.core.engine.InputPort;
27 | import com.jpaulmorrison.fbp.core.engine.OutPort;
28 | import com.jpaulmorrison.fbp.core.engine.OutputPort;
29 | import com.jpaulmorrison.fbp.core.engine.Packet;
30 |
31 |
32 | /**
33 | * Pass a stream of packets to an output stream, if contents string ends in ".java",
34 | * discarding others
35 | *
36 | */
37 | @ComponentDescription("Pass a stream of packets to an output stream, if contents ends in '.java'")
38 | @OutPort("OUT")
39 | @InPort("IN")
40 | public class JFilter extends Component {
41 |
42 |
43 | private InputPort inport;
44 |
45 | private OutputPort outport;
46 |
47 | @Override
48 | protected void execute() {
49 |
50 | // make it a non-looper - for testing
51 |
52 | Packet p = inport.receive();
53 | String s = (String) p.getContent();
54 | if (s.endsWith(".java"))
55 | outport.send(p);
56 | else
57 | drop(p);
58 | }
59 |
60 | @Override
61 | protected void openPorts() {
62 |
63 | inport = openInput("IN");
64 |
65 | outport = openOutput("OUT");
66 |
67 | }
68 | }
69 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/resourcekit/examples/components/TestStack.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 |
19 | package com.jpaulmorrison.fbp.resourcekit.examples.components;
20 |
21 |
22 | import com.jpaulmorrison.fbp.core.engine.Component;
23 | import com.jpaulmorrison.fbp.core.engine.InPort;
24 | import com.jpaulmorrison.fbp.core.engine.InputPort;
25 | import com.jpaulmorrison.fbp.core.engine.Packet;
26 |
27 |
28 | /** Component to do simple stack testing.
29 | */
30 | @InPort("IN")
31 | public class TestStack extends Component {
32 |
33 | private InputPort inport;
34 |
35 | @Override
36 | protected void execute() {
37 |
38 | Packet p;
39 | if (stackSize() > 0) {
40 | p = pop();
41 | } else {
42 | p = create("");
43 | }
44 | Packet q = inport.receive();
45 | if (q != null) {
46 | drop(q);
47 | push(p);
48 | } else { // end of stream
49 | drop(p);
50 | }
51 |
52 | }
53 |
54 | @Override
55 | protected void openPorts() {
56 | inport = openInput("IN");
57 | }
58 | }
59 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/resourcekit/examples/networks/Copy1.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 |
19 | //xxxxxxxxxxxxxxxxxx
20 |
21 | /* ---------
22 | * *
23 | */
24 |
25 |
26 | package com.jpaulmorrison.fbp.resourcekit.examples.networks;
27 |
28 |
29 | import com.jpaulmorrison.fbp.core.components.misc.WriteToConsole;
30 | import com.jpaulmorrison.fbp.core.engine.Network;
31 | import com.jpaulmorrison.fbp.resourcekit.examples.components.SlowPass;
32 | import com.jpaulmorrison.fbp.core.components.misc.GenerateTestData;
33 |
34 | /**
35 | * Generate 100 test IPs and write them to the console
36 | *
37 | */
38 | public class Copy1 extends Network {
39 |
40 |
41 | @Override
42 | protected void define() {
43 | // component("MONITOR", Monitor.class);
44 |
45 | connect(component("Generate", GenerateTestData.class), port("OUT"), //component("SlowPass", SlowPass.class), port("IN"));
46 | //connect(component("SlowPass"), port("OUT"),
47 | component("Write", WriteToConsole.class), port("IN"));
48 |
49 | initialize("100", component("Generate"), port("COUNT"));
50 |
51 | }
52 |
53 | public static void main(final String[] argv) throws Exception {
54 | //for (int i = 0; i < 50; i++)
55 | new Copy1().go();
56 | }
57 | }
58 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/resourcekit/examples/networks/Copy2.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 | package com.jpaulmorrison.fbp.resourcekit.examples.networks;
19 |
20 |
21 | import com.jpaulmorrison.fbp.core.components.text.ReplString;
22 | import com.jpaulmorrison.fbp.core.components.misc.WriteToConsole;
23 | import com.jpaulmorrison.fbp.core.engine.Network;
24 | import com.jpaulmorrison.fbp.core.components.misc.GenerateTestData;
25 |
26 | /**
27 | * Generate 2000 test IPs, pass them through Replicate and write them to console
28 | *
29 | *
30 | */
31 |
32 | public class Copy2 extends Network {
33 |
34 |
35 | @Override
36 | protected void define() {
37 |
38 | connect(component("Generate", GenerateTestData.class), port("OUT"), component("ReplString", ReplString.class), port("IN"));
39 |
40 | connect(component("ReplString"), port("OUT", 0), component("Write", WriteToConsole.class), port("IN"));
41 |
42 | initialize("2000", component("Generate"), port("COUNT"));
43 |
44 | }
45 |
46 | public static void main(final String[] argv) throws Exception {
47 | new Copy2().go();
48 | }
49 | }
50 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/resourcekit/examples/networks/CopyFileToCons.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 |
19 | package com.jpaulmorrison.fbp.resourcekit.examples.networks;
20 |
21 |
22 | import java.io.File;
23 | import com.jpaulmorrison.fbp.core.components.routing.Discard;
24 | import com.jpaulmorrison.fbp.core.components.io.ReadFile;
25 | import com.jpaulmorrison.fbp.core.components.misc.WriteToConsole;
26 | import com.jpaulmorrison.fbp.core.engine.Network;
27 | import com.jpaulmorrison.fbp.core.components.text.DuplicateString;
28 |
29 | /**
30 | * Read from file; run them through DuplicateString; write one set to the console, and the other st to Discard *
31 | *
32 | */
33 |
34 |
35 | public class CopyFileToCons extends Network {
36 |
37 | @Override
38 | protected void define() {
39 | connect(component("Read", ReadFile.class), port("OUT"), component("Dup", DuplicateString.class), port("IN"));
40 | connect(component("Dup"), port("DUPLICATE"), component("Write", WriteToConsole.class), port("IN"));
41 | connect(component("Dup"), port("OUT"), component("Disc", Discard.class), port("IN"));
42 | initialize("src/main/resources/testdata/testdata.txt".replace("/", File.separator), component("Read"), port("SOURCE"));
43 |
44 | }
45 |
46 | public static void main(final String[] argv) throws Exception {
47 | new CopyFileToCons().go();
48 | }
49 | }
50 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/resourcekit/examples/networks/Deadlock.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 |
19 | package com.jpaulmorrison.fbp.resourcekit.examples.networks;
20 |
21 |
22 | import com.jpaulmorrison.fbp.core.components.routing.ConcatStreams;
23 | import com.jpaulmorrison.fbp.core.components.routing.Discard;
24 |
25 | import com.jpaulmorrison.fbp.core.components.text.ReplString;
26 | import com.jpaulmorrison.fbp.core.engine.Network;
27 | import com.jpaulmorrison.fbp.core.components.misc.GenerateTestData;
28 |
29 |
30 | /** This network forces a deadlock condition */
31 |
32 | public class Deadlock extends Network {
33 |
34 |
35 | @Override
36 | protected void define() {
37 | //tracing = true;
38 |
39 | connect(component("Gen", GenerateTestData.class), port("OUT"), component("ReplString", ReplString.class), port("IN"));
40 | initialize("10000", component("Gen"), port("COUNT"));
41 | connect(component("ConcatStreams", ConcatStreams.class), port("OUT"), component("Discard", Discard.class), port("IN"));
42 |
43 | connect(component("ReplString"), port("OUT", 0), component("ConcatStreams"), port("IN", 0));
44 |
45 | connect(component("ReplString"), port("OUT", 2), component("ConcatStreams"), port("IN", 1));
46 |
47 | connect(component("ReplString"), port("OUT", 1), component("ConcatStreams"), port("IN", 2));
48 | }
49 |
50 | public static void main(final String[] argv) throws Exception {
51 | new Deadlock().go();
52 | }
53 | }
54 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/resourcekit/examples/networks/FileCopy.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 |
19 | package com.jpaulmorrison.fbp.resourcekit.examples.networks;
20 |
21 |
22 | import java.io.File;
23 |
24 | import com.jpaulmorrison.fbp.core.components.io.ReadFile;
25 | import com.jpaulmorrison.fbp.core.components.io.WriteFile;
26 | import com.jpaulmorrison.fbp.core.engine.Network;
27 |
28 | /**
29 | * Read file; write to other file
30 | *
31 | */
32 | public class FileCopy extends Network {
33 |
34 |
35 | @Override
36 | protected void define() {
37 | connect(component("Read", ReadFile.class), port("OUT"), component("Write", WriteFile.class), port("IN"));
38 | initialize("src/main/resources/testdata/testdata.txt".replace("/", File.separator), component("Read"), port("SOURCE"));
39 | initialize("src/main/resources/testdata/output".replace("/", File.separator), component("Write"), port("DESTINATION"));
40 | }
41 |
42 | public static void main(final String[] argv) throws Throwable {
43 | new FileCopy().go();
44 | }
45 | }
46 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/resourcekit/examples/networks/PlayTune.java:
--------------------------------------------------------------------------------
1 | package com.jpaulmorrison.fbp.resourcekit.examples.networks;
2 |
3 | import com.jpaulmorrison.fbp.core.components.audio.GenSamples;
4 | import com.jpaulmorrison.fbp.core.components.audio.JingleBells;
5 | import com.jpaulmorrison.fbp.core.components.audio.SoundMixer;
6 | import com.jpaulmorrison.fbp.core.engine.Network;
7 |
8 | public class PlayTune extends Network {
9 |
10 | // Jingle Bells - one voice
11 |
12 | @Override
13 | protected void define() throws Exception {
14 | component("JingleBells", JingleBells.class);
15 | component("GenSamples", GenSamples.class);
16 | component("SoundMixer", SoundMixer.class);
17 |
18 | connect("JingleBells.OUT", "GenSamples.IN");
19 | connect("GenSamples.OUT", "SoundMixer.IN");
20 | initialize("1", "SoundMixer.GAINS");
21 | }
22 |
23 | public static void main(String[] args) throws Throwable {
24 | new PlayTune().go();
25 |
26 | }
27 |
28 | }
29 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/resourcekit/examples/networks/ReadHTML.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 |
19 | package com.jpaulmorrison.fbp.resourcekit.examples.networks;
20 |
21 |
22 |
23 |
24 | import com.jpaulmorrison.fbp.core.components.httpurl.LoadURL;
25 | import com.jpaulmorrison.fbp.core.components.misc.WriteObjectsToConsole;
26 | import com.jpaulmorrison.fbp.core.components.parsexml.ParseXML;
27 | import com.jpaulmorrison.fbp.core.engine.Network;
28 |
29 | /**
30 | * Read from URL; write to the console
31 | *
32 | */
33 |
34 |
35 | public class ReadHTML extends Network {
36 |
37 | @Override
38 | protected void define() {
39 | connect(component("Load URL", LoadURL.class), port("OUT"), component("Parse", ParseXML.class), port("IN"), 1);
40 | initialize("https://jpaulm.github.io/fbp/fbp-inspired-vs-real-fbp.html", component("Load URL"), port("SOURCE"));
41 | connect(component("Parse"), port("OUT"), component("Write", WriteObjectsToConsole.class), port("IN"), 1);
42 |
43 | }
44 |
45 | public static void main(final String[] argv) throws Exception {
46 | new ReadHTML().go();
47 | }
48 | }
49 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/resourcekit/examples/networks/RemoveGedcomQuotes.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 |
19 | package com.jpaulmorrison.fbp.resourcekit.examples.networks;
20 |
21 |
22 | import com.jpaulmorrison.fbp.core.components.io.ReadFile;
23 | import com.jpaulmorrison.fbp.core.components.io.WriteFile;
24 | import com.jpaulmorrison.fbp.core.engine.Network;
25 | import com.jpaulmorrison.fbp.resourcekit.examples.components.RGQ;
26 |
27 | /**
28 | * Read file; write to other file
29 | *
30 | */
31 | public class RemoveGedcomQuotes extends Network {
32 |
33 |
34 | @Override
35 | protected void define() {
36 | connect(component("Read", ReadFile.class), port("OUT"), component("RGQ", RGQ.class), port("IN"));
37 | connect(component("RGQ"), port("OUT"), component("Write", WriteFile.class), port("IN"));
38 | initialize("C:\\Users\\Paul\\Documents\\NonBusiness\\GeneWeb\\GeneWeb-4.09 Win\\gw\\a.ged", component("Read"), port("SOURCE"));
39 | initialize("C:\\Users\\Paul\\Documents\\NonBusiness\\GeneWeb\\GeneWeb-4.09 Win\\gw\\a2.ged", component("Write"), port("DESTINATION"));
40 | }
41 |
42 | public static void main(final String[] argv) throws Throwable {
43 | new RemoveGedcomQuotes().go();
44 | }
45 | }
46 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/resourcekit/examples/networks/SelRecipes.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 |
19 | package com.jpaulmorrison.fbp.resourcekit.examples.networks;
20 |
21 |
22 | import java.io.File;
23 |
24 | import com.jpaulmorrison.fbp.core.components.routing.Discard;
25 | import com.jpaulmorrison.fbp.core.components.io.ReadFile;
26 | import com.jpaulmorrison.fbp.core.components.text.StartsWith;
27 | import com.jpaulmorrison.fbp.core.components.misc.WriteToConsole;
28 | import com.jpaulmorrison.fbp.core.engine.Network;
29 |
30 | /**
31 | * Select appetizer recipes from collection of recipes
32 | *
33 | */
34 |
35 | public class SelRecipes extends Network {
36 |
37 |
38 | @Override
39 | protected void define() {
40 | connect(component("Read", ReadFile.class), port("OUT"), component("StartsWith", StartsWith.class), port("IN"));
41 | connect(component("StartsWith"), port("ACC"), component("Write", WriteToConsole.class), port("IN"));
42 | connect(component("StartsWith"), port("REJ"), component("Discard", Discard.class), port("IN"));
43 | initialize("src/main/resources/testdata/recipes.csv".replace("/", File.separator), component("Read"), port("SOURCE"));
44 | initialize("\"A\"", component("StartsWith"), port("TEST"));
45 |
46 | }
47 |
48 | public static void main(final String[] argv) throws Exception {
49 | new SelRecipes().go();
50 | }
51 | }
52 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/resourcekit/examples/networks/SriramsTest.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 |
19 | package com.jpaulmorrison.fbp.resourcekit.examples.networks;
20 |
21 |
22 | import com.jpaulmorrison.fbp.core.components.routing.Discard;
23 | import com.jpaulmorrison.fbp.core.engine.Network;
24 | import com.jpaulmorrison.fbp.core.components.misc.GenerateTestData;
25 |
26 |
27 | /**
28 | * This network is intended for timing runs
29 | *
30 | */
31 |
32 | public class SriramsTest extends Network {
33 |
34 |
35 |
36 | @Override
37 | protected void define() {
38 | /* Trying to get the same number of send/receive pairs */
39 | component("Discard", Discard.class);
40 | int lim = 1000;
41 | for (int i = 0; i < lim; i++) {
42 | component("Generate " + i, GenerateTestData.class);
43 | initialize("1000", component("Generate " + i), port("COUNT"));
44 | connect(component("Generate " + i), port("OUT"), component("Discard"), port("IN"));
45 | }
46 |
47 | }
48 |
49 | public static void main(final String[] argv) throws Exception {
50 | new SriramsTest().go();
51 | }
52 | }
53 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/resourcekit/examples/networks/SubnetD.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 |
19 | package com.jpaulmorrison.fbp.resourcekit.examples.networks; // Change as required
20 |
21 |
22 | import com.jpaulmorrison.fbp.core.components.routing.Discard;
23 | import com.jpaulmorrison.fbp.core.engine.InPort;
24 | import com.jpaulmorrison.fbp.core.engine.SubIn;
25 | import com.jpaulmorrison.fbp.core.engine.SubNet;
26 |
27 | /**
28 | * Simple subnet for testing
29 | *
30 | */
31 | @InPort("IN")
32 | public class SubnetD extends SubNet {
33 |
34 | @Override
35 | protected void define() throws Exception {
36 | component("SI", SubIn.class);
37 | component("discard", Discard.class);
38 | connect("SI.OUT", "discard.IN", true);
39 | initialize("IN", "SI.NAME");
40 | }
41 |
42 | }
43 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/resourcekit/examples/networks/SubnetX.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 |
19 | package com.jpaulmorrison.fbp.resourcekit.examples.networks; // Change as required
20 |
21 |
22 | import com.jpaulmorrison.fbp.core.components.routing.Passthru;
23 | import com.jpaulmorrison.fbp.core.engine.InPort;
24 | import com.jpaulmorrison.fbp.core.engine.OutPort;
25 | import com.jpaulmorrison.fbp.core.engine.SubInSS;
26 | import com.jpaulmorrison.fbp.core.engine.SubNet;
27 | import com.jpaulmorrison.fbp.core.engine.SubOutSS;
28 |
29 | /**
30 | * Simple subnet for testing, showing substream sensitivity
31 | *
32 | */
33 |
34 | @OutPort("OUT")
35 | @InPort("IN")
36 | public class SubnetX extends SubNet {
37 |
38 | @Override
39 | protected void define() {
40 |
41 | component("SUBIN", SubInSS.class);
42 | component("SUBOUT", SubOutSS.class);
43 | component("Pass", Passthru.class);
44 |
45 | initialize("IN", component("SUBIN"), port("NAME"));
46 | connect(component("SUBIN"), port("OUT"), component("Pass"), port("IN"));
47 | connect(component("Pass"), port("OUT"), component("SUBOUT"), port("IN"));
48 | initialize("OUT", component("SUBOUT"), port("NAME"));
49 |
50 | }
51 | }
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/resourcekit/examples/networks/TestArrayPorts.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 |
18 |
19 | * Sven Steinseifer - 2010 */
20 |
21 | package com.jpaulmorrison.fbp.resourcekit.examples.networks;
22 |
23 |
24 | import com.jpaulmorrison.fbp.core.components.routing.Discard;
25 | import com.jpaulmorrison.fbp.core.components.text.ReplString;
26 | import com.jpaulmorrison.fbp.core.engine.Network;
27 | import com.jpaulmorrison.fbp.core.components.misc.GenerateTestData;
28 |
29 |
30 | public class TestArrayPorts {
31 |
32 | public static void main(final String[] args) {
33 | try {
34 | new Network() {
35 |
36 | @Override
37 | protected void define() {
38 | component("generate", GenerateTestData.class);
39 | component("replicate", ReplString.class);
40 | component("discard", Discard.class);
41 |
42 | connect("generate.OUT", "replicate.IN");
43 | connect("replicate.OUT[1]", "discard.IN");
44 | initialize("100", "generate.COUNT");
45 | }
46 | }.go();
47 | } catch (Exception e) {
48 | System.err.println("Exception trapped here");
49 | e.printStackTrace();
50 | }
51 | }
52 | }
53 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/resourcekit/examples/networks/TestChainsNet.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 |
19 | package com.jpaulmorrison.fbp.resourcekit.examples.networks;
20 |
21 |
22 | import com.jpaulmorrison.fbp.core.components.routing.Discard;
23 | import com.jpaulmorrison.fbp.core.engine.Network;
24 | import com.jpaulmorrison.fbp.resourcekit.examples.components.ChainOps;
25 |
26 |
27 | public class TestChainsNet extends Network {
28 |
29 |
30 | @Override
31 | protected void define() {
32 |
33 | connect(component("TestChains", ChainOps.class), port("OUT"), component("Discard", Discard.class), port("IN"));
34 |
35 | }
36 |
37 | public static void main(final String[] argv) throws Exception {
38 | new TestChainsNet().go();
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/resourcekit/examples/networks/TestCounter.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 |
19 | package com.jpaulmorrison.fbp.resourcekit.examples.networks;
20 |
21 |
22 | import com.jpaulmorrison.fbp.core.components.misc.Counter;
23 | import com.jpaulmorrison.fbp.core.components.misc.WriteToConsole;
24 | import com.jpaulmorrison.fbp.core.engine.Network;
25 | import com.jpaulmorrison.fbp.core.components.misc.GenerateTestData;
26 |
27 |
28 | public class TestCounter extends Network {
29 |
30 | @Override
31 | protected void define() {
32 |
33 | connect(component("Generate", GenerateTestData.class), port("OUT"), component("Counter", Counter.class), port("IN"));
34 |
35 | connect(component("Counter"), port("COUNT"), component("Display", WriteToConsole.class), port("IN"));
36 |
37 | initialize("0", component("Generate"), port("COUNT"));
38 |
39 | }
40 |
41 | public static void main(final String[] argv) throws Exception {
42 | new TestCounter().go();
43 | }
44 | }
45 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/resourcekit/examples/networks/TestDropOldest.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 |
19 | package com.jpaulmorrison.fbp.resourcekit.examples.networks;
20 |
21 |
22 | import com.jpaulmorrison.fbp.core.components.misc.WriteToConsole;
23 | import com.jpaulmorrison.fbp.core.engine.Connection;
24 | import com.jpaulmorrison.fbp.core.engine.Network;
25 | import com.jpaulmorrison.fbp.core.components.misc.GenerateTestData;
26 | import com.jpaulmorrison.fbp.resourcekit.examples.components.SlowPass;
27 |
28 |
29 | public class TestDropOldest extends Network {
30 |
31 |
32 |
33 | @Override
34 | protected void define() {
35 |
36 | Connection c = connect(component("Generate", GenerateTestData.class), port("OUT"),
37 | component("SlowPass", SlowPass.class), port("IN"));
38 | c.setDropOldest();
39 | connect(component("SlowPass"), port("OUT"), component("Display", WriteToConsole.class), port("IN"));
40 |
41 | initialize("2000", component("Generate"), port("COUNT"));
42 |
43 | }
44 |
45 | public static void main(final String[] argv) throws Exception {
46 | new TestDropOldest().go();
47 | }
48 | }
49 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/resourcekit/examples/networks/TestFixedSizeArray.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 | package com.jpaulmorrison.fbp.resourcekit.examples.networks;
19 |
20 |
21 | import com.jpaulmorrison.fbp.core.components.routing.Discard;
22 | import com.jpaulmorrison.fbp.core.engine.Network;
23 | import com.jpaulmorrison.fbp.resourcekit.examples.components.GenerateFixedSizeArray;
24 |
25 |
26 | public class TestFixedSizeArray extends Network {
27 |
28 | @Override
29 | protected void define() {
30 | component("Generate", GenerateFixedSizeArray.class);
31 | component("Discard0", Discard.class);
32 | component("Discard1", Discard.class);
33 | connect("Generate.OUT[0]", "Discard0.IN");
34 | connect("Generate.OUT[1]", "Discard1.IN");
35 |
36 | initialize("100", component("Generate"), port("COUNT"));
37 | }
38 |
39 | public static void main(final String[] argv) throws Exception {
40 | new TestFixedSizeArray().go();
41 |
42 | }
43 |
44 | }
45 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/resourcekit/examples/networks/TestIPCounting.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 | package com.jpaulmorrison.fbp.resourcekit.examples.networks;
19 |
20 |
21 | import com.jpaulmorrison.fbp.core.components.routing.Discard;
22 | import com.jpaulmorrison.fbp.core.engine.DispIPCounts;
23 | import com.jpaulmorrison.fbp.core.components.text.ReplString;
24 | import com.jpaulmorrison.fbp.core.components.misc.WriteToConsole;
25 | import com.jpaulmorrison.fbp.core.engine.Network;
26 | import com.jpaulmorrison.fbp.core.components.misc.GenerateTestData;
27 |
28 |
29 | public class TestIPCounting extends Network {
30 |
31 |
32 |
33 | @Override
34 | protected void define() {
35 |
36 | connect(component("DispCounts", DispIPCounts.class), port("OUT"), component("Display", WriteToConsole.class),
37 | port("IN"));
38 |
39 | connect(component("Generate", GenerateTestData.class), port("OUT"), component("ReplStr", ReplString.class), port("IN"),
40 | true);
41 | boolean MONITOR = true;
42 | connect(component("ReplStr"), port("OUT"), component("Discard", Discard.class), port("IN"), MONITOR);
43 |
44 | connect("Discard.*", "DispCounts.CLSDN");
45 |
46 | initialize("1000000", component("Generate"), port("COUNT"));
47 | initialize("500", component("DispCounts"), port("INTVL")); // DispIPCounts is MustRun
48 |
49 | }
50 |
51 | public static void main(final String[] argv) throws Exception {
52 | new TestIPCounting().go();
53 | }
54 | }
55 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/resourcekit/examples/networks/TestInfiniteQueue.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 | package com.jpaulmorrison.fbp.resourcekit.examples.networks;
19 |
20 |
21 | import com.jpaulmorrison.fbp.core.engine.Network;
22 | import com.jpaulmorrison.fbp.core.components.misc.GenerateTestData;
23 | import com.jpaulmorrison.fbp.resourcekit.examples.subnets.InfiniteQueue;
24 | import com.jpaulmorrison.fbp.core.components.misc.WriteToConsole;
25 |
26 |
27 | public class TestInfiniteQueue extends Network {
28 |
29 | String description = "Test Infinite Queue";
30 |
31 | @Override
32 | protected void define() {
33 | component("__ Generate", GenerateTestData.class);
34 | component("_ Infinite_ Queue", InfiniteQueue.class);
35 | component("__ Display", WriteToConsole.class);
36 | connect(component("_ Infinite_ Queue"), port("OUT"), component("__ Display"), port("IN"));
37 | initialize("100", component("__ Generate"), port("COUNT"));
38 | connect(component("__ Generate"), port("OUT"), component("_ Infinite_ Queue"), port("IN"));
39 | initialize("temp.data", component("_ Infinite_ Queue"), port("TEMPFILENAME"));
40 |
41 | }
42 |
43 | public static void main(final String[] argv) throws Exception {
44 | // try this test 50 times!
45 | //for (int i = 0; i < 50; i++) {
46 | new TestInfiniteQueue().go();
47 | // }
48 | }
49 |
50 | }
51 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/resourcekit/examples/networks/TestLocks.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | *
18 |
19 | * Sven Steinseifer - 2010 */
20 |
21 | package com.jpaulmorrison.fbp.resourcekit.examples.networks;
22 |
23 |
24 | import com.jpaulmorrison.fbp.core.components.routing.Discard;
25 | import com.jpaulmorrison.fbp.core.engine.Network;
26 | import com.jpaulmorrison.fbp.resourcekit.examples.components.GenSS;
27 |
28 |
29 | public class TestLocks {
30 |
31 | public static void main(final String[] args) {
32 | try {
33 | new Network() {
34 |
35 | @Override
36 | protected void define() {
37 | component("genSS", GenSS.class);
38 | component("subnet", SubnetX.class);
39 | component("discard", Discard.class);
40 | connect("genSS.OUT", "subnet.IN");
41 | connect("subnet.OUT", "discard.IN");
42 | initialize("1000", "genSS.COUNT");
43 | }
44 | }.go();
45 |
46 | } catch (Exception e) {
47 | System.err.println("Exception trapped here");
48 | e.printStackTrace();
49 | }
50 | }
51 | }
52 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/resourcekit/examples/networks/TestMixedInput.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 |
19 | package com.jpaulmorrison.fbp.resourcekit.examples.networks;
20 |
21 | import com.jpaulmorrison.fbp.core.components.routing.ConcatStreams;
22 | import com.jpaulmorrison.fbp.core.components.misc.WriteToConsole;
23 | import com.jpaulmorrison.fbp.core.engine.Network;
24 | import com.jpaulmorrison.fbp.core.components.misc.GenerateTestData;
25 |
26 | public class TestMixedInput extends Network {
27 |
28 |
29 | /**
30 | * This test is successful if it ends with the error: IIP port cannot be
31 | * shared
32 | */
33 |
34 | @Override
35 | protected void define() {
36 | connect(component("Generate", GenerateTestData.class), port("OUT"),
37 | component("Concat", ConcatStreams.class), port("IN"));
38 | connect("Concat.OUT", component("Write", WriteToConsole.class),
39 | port("IN"));
40 | initialize("testing", "Concat.IN[0]");
41 | initialize("100", component("Generate"), port("COUNT"));
42 | }
43 |
44 | public static void main(final String[] argv) throws Exception {
45 | new TestMixedInput().go();
46 | }
47 | }
48 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/resourcekit/examples/networks/TestNestedSubstreams.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | *
18 |
19 | * Sven Steinseifer - 2010 */
20 |
21 | package com.jpaulmorrison.fbp.resourcekit.examples.networks;
22 |
23 |
24 | import com.jpaulmorrison.fbp.core.components.routing.Output;
25 | import com.jpaulmorrison.fbp.core.engine.Network;
26 | import com.jpaulmorrison.fbp.resourcekit.examples.components.GenSubStreams;
27 |
28 |
29 | public class TestNestedSubstreams {
30 |
31 | public static void main(final String[] args) {
32 | try {
33 | new Network() {
34 |
35 | @Override
36 | protected void define() {
37 | component("generate", GenSubStreams.class);
38 | component("subnet", SubnetX.class);
39 | component("output", Output.class);
40 | connect("generate.OUT", "subnet.IN");
41 | connect("subnet.OUT", "output.IN");
42 | }
43 | }.go();
44 |
45 | } catch (Exception e) {
46 | System.err.println("Exception trapped here");
47 | e.printStackTrace();
48 | }
49 | }
50 | }
51 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/resourcekit/examples/networks/TestNullOutputPort.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | *
18 |
19 | * Sven Steinseifer - 2010 */
20 |
21 | package com.jpaulmorrison.fbp.resourcekit.examples.networks;
22 |
23 |
24 | import com.jpaulmorrison.fbp.core.components.routing.Discard;
25 | import com.jpaulmorrison.fbp.core.components.misc.GenerateTestData;
26 | import com.jpaulmorrison.fbp.core.components.text.ReplString;
27 | import com.jpaulmorrison.fbp.core.engine.Network;
28 |
29 |
30 | public class TestNullOutputPort {
31 |
32 | public static void main(final String[] args) {
33 | try {
34 | new Network() {
35 |
36 | @Override
37 | protected void define() {
38 | component("generate", GenerateTestData.class);
39 | component("replicate", ReplString.class);
40 | component("discard", Discard.class);
41 | connect("generate.OUT", "replicate.IN");
42 | connect("replicate.OUT[2]", "discard.IN");
43 | initialize("100", "generate.COUNT");
44 | }
45 |
46 | }.go();
47 | } catch (Exception e) {
48 | System.err.println("Exception trapped here");
49 | e.printStackTrace();
50 | }
51 | }
52 | }
53 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/resourcekit/examples/networks/TestOptionalArray.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 | package com.jpaulmorrison.fbp.resourcekit.examples.networks;
19 |
20 |
21 | import com.jpaulmorrison.fbp.core.components.routing.Discard;
22 | import com.jpaulmorrison.fbp.core.engine.Network;
23 | import com.jpaulmorrison.fbp.resourcekit.examples.components.GenerateOptionalArray;
24 |
25 |
26 | public class TestOptionalArray extends Network {
27 |
28 | @Override
29 | protected void define() {
30 | component("Generate", GenerateOptionalArray.class);
31 | component("行動", Discard.class);
32 | component("Discard2", Discard.class);
33 | connect("Generate.OUT", "行動.IN");
34 | connect(component("Generate"), port("OUT[2]"), "Discard2.IN");
35 |
36 | initialize("100", component("Generate"), port("COUNT"));
37 | }
38 |
39 | public static void main(final String[] argv) throws Exception {
40 | new TestOptionalArray().go();
41 |
42 | }
43 |
44 | }
45 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/resourcekit/examples/networks/TestSelNthItem.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 | package com.jpaulmorrison.fbp.resourcekit.examples.networks;
19 |
20 |
21 | import java.io.File;
22 |
23 | import com.jpaulmorrison.fbp.core.engine.Network;
24 |
25 |
26 | public class TestSelNthItem extends Network {
27 |
28 | //String description = "Select record by number";
29 |
30 | @Override
31 | protected void define() {
32 | component("Discard", com.jpaulmorrison.fbp.core.components.routing.Discard.class);
33 | component("Write", com.jpaulmorrison.fbp.core.components.io.WriteFile.class);
34 | component("Select", com.jpaulmorrison.fbp.core.components.routing.SelNthItem.class);
35 | component("Read", com.jpaulmorrison.fbp.core.components.io.ReadFile.class);
36 |
37 | connect("Read.OUT", "Select.IN");
38 | connect("Select.ACC", "Write.IN");
39 | connect("Select.REJ", "Discard.IN");
40 |
41 | // The selected number is zero based: 11 will result in twelfth record
42 | initialize("11", component("Select"), port("NUMBER"));
43 | initialize("src/main/resources/testdata/21lines.txt".replace("/", File.separator), component("Read"), port("SOURCE"));
44 | initialize("src/main/resources/testdata/output".replace("/", File.separator), component("Write"), port("DESTINATION"));
45 | }
46 |
47 | public static void main(final String[] argv) throws Exception {
48 | new TestSelNthItem().go();
49 | }
50 | }
51 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/resourcekit/examples/networks/TryReplicate.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 |
19 | package com.jpaulmorrison.fbp.resourcekit.examples.networks;
20 |
21 |
22 | import java.io.File;
23 |
24 | import com.jpaulmorrison.fbp.core.components.io.ReadFile;
25 | import com.jpaulmorrison.fbp.core.components.misc.GenerateTestData;
26 | import com.jpaulmorrison.fbp.core.components.text.ReplString;
27 | import com.jpaulmorrison.fbp.core.components.misc.WriteToConsole;
28 | import com.jpaulmorrison.fbp.core.engine.Network;
29 |
30 |
31 | public class TryReplicate extends Network {
32 |
33 |
34 | @Override
35 | protected void define() {
36 | connect(component("Read", ReadFile.class), port("OUT"), component("Replicate", ReplString.class), port("IN"));
37 | initialize("src/main/resources/testdata/testdata.txt".replace("/", File.separator), component("Read"), port("SOURCE"));
38 |
39 | connect(component("Replicate"), port("OUT[0]"), component("Write1", WriteToConsole.class), port("IN"));
40 |
41 | connect(component("Replicate"), port("OUT[1]"), component("Write2", WriteToConsole.class), port("IN"));
42 |
43 | connect(component("Replicate"), port("OUT[2]"), component("Write3", WriteToConsole.class), port("IN"));
44 |
45 | }
46 |
47 | public static void main(final String[] argv) throws Exception {
48 | new TryReplicate().go();
49 | }
50 | }
51 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/resourcekit/examples/networks/VolumeTest2.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 |
19 | package com.jpaulmorrison.fbp.resourcekit.examples.networks;
20 |
21 |
22 | import com.jpaulmorrison.fbp.core.components.routing.Discard;
23 | import com.jpaulmorrison.fbp.core.engine.Network;
24 | import com.jpaulmorrison.fbp.core.components.misc.GenerateTestData;
25 |
26 |
27 | /** This network is intended for timing runs */
28 |
29 | public class VolumeTest2 extends Network {
30 |
31 |
32 | @Override
33 | protected void define() {
34 | component("Generate", GenerateTestData.class);
35 |
36 | component("Discard", Discard.class);
37 |
38 | connect(component("Generate"), port("OUT"), component("Discard"), port("IN"));
39 |
40 | initialize("100000000", component("Generate"), port("COUNT"));
41 |
42 | /*** on my (AMD 925) machine (4 processors) - JavaFBP 2.6.5 - approx. 1200 secs
43 | * approx. 100,000,000 sends, receives each, and 100,000,000 creates and drops each ->
44 | * only uses 2 processors, so elapsed time unrealistic
45 | * Aug. 11, 2012
46 | * */
47 |
48 | }
49 |
50 | public static void main(final String[] argv) throws Exception {
51 | new VolumeTest2().go();
52 | }
53 | }
54 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/resourcekit/examples/networks/WordCount.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 |
19 | package com.jpaulmorrison.fbp.resourcekit.examples.networks;
20 |
21 |
22 | import java.io.File;
23 |
24 | import com.jpaulmorrison.fbp.core.components.io.ReadFile;
25 | import com.jpaulmorrison.fbp.core.components.routing.Sort;
26 | import com.jpaulmorrison.fbp.core.components.misc.WriteToConsole;
27 | //import com.jpaulmorrison.fbp.core.components.WriteFile;
28 | import com.jpaulmorrison.fbp.core.engine.Network;
29 | import com.jpaulmorrison.fbp.core.components.text.DeCompose;
30 | import com.jpaulmorrison.fbp.resourcekit.examples.components.GenerateWordCounts;
31 |
32 |
33 | public class WordCount extends Network {
34 |
35 |
36 | @Override
37 | protected void define() {
38 | component("Read", ReadFile.class);
39 | component("DeCompose", DeCompose.class);
40 | component("GenerateWordCounts", GenerateWordCounts.class);
41 | component("Sort", Sort.class);
42 | component("Display", WriteToConsole.class);
43 |
44 | connect("Read.OUT", "DeCompose.IN");
45 | initialize("src/main/resources/testdata/readme.txt".replace("/", File.separator), "Read.SOURCE");
46 | connect("DeCompose.OUT","GenerateWordCounts.IN");
47 | connect("GenerateWordCounts.OUT","Sort.IN");
48 | connect("Sort.OUT","Display.IN");
49 |
50 | }
51 |
52 | public static void main(final String[] argv) throws Throwable {
53 | new WordCount().go();
54 | }
55 | }
56 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/resourcekit/examples/networks/WriteReadInterpret.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 |
18 | * Contributed by Bob Corrick - Feb., 2012 - for the AppKatas exercise on the FBP Google Group
19 | */
20 | package com.jpaulmorrison.fbp.resourcekit.examples.networks;
21 |
22 |
23 | import com.jpaulmorrison.fbp.core.engine.Network;
24 | import com.jpaulmorrison.fbp.resourcekit.examples.components.Interpret;
25 | import com.jpaulmorrison.fbp.resourcekit.examples.components.WriteReadConsole;
26 |
27 |
28 | public class WriteReadInterpret extends Network {
29 |
30 | String description = "http://jpaulmorrison.com/fbp/loop.shtml";
31 |
32 | @Override
33 | protected void define() {
34 | component("Interpret", Interpret.class);
35 | component("Write IN_and MENU_Read user_CMD", WriteReadConsole.class);
36 | component("Start", com.jpaulmorrison.fbp.core.components.routing.Kick.class);
37 | connect(component("Start"), port("OUT"), component("Write IN_and MENU_Read user_CMD"), port("IN"));
38 | initialize("First, Next, Previous, Last, Jump to, eXit", component("Write IN_and MENU_Read user_CMD"), port("MENU"));
39 | connect(component("Write IN_and MENU_Read user_CMD"), port("CMD"), component("Interpret"), port("IN"));
40 | connect(component("Interpret"), port("OUT"), component("Write IN_and MENU_Read user_CMD"), port("IN"));
41 |
42 | }
43 |
44 | public static void main(final String[] argv) throws Exception {
45 | new WriteReadInterpret().go();
46 | }
47 |
48 | }
49 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/resourcekit/experimental/networks/CopyTR.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 |
19 | package com.jpaulmorrison.fbp.resourcekit.experimental.networks;
20 |
21 | import com.jpaulmorrison.fbp.core.components.misc.WriteToConsole;
22 | import com.jpaulmorrison.fbp.core.engine.Network;
23 | import com.jpaulmorrison.fbp.core.components.misc.GenerateTestData;
24 | import com.jpaulmorrison.fbp.resourcekit.experimental.components.TabulaRasa;
25 |
26 |
27 | public class CopyTR extends Network {
28 |
29 | /**
30 | * Run network using (experimental) TabulaRasa component
31 | *
32 | */
33 |
34 | @Override
35 | protected void define() {
36 |
37 | connect(component("Generate", GenerateTestData.class), port("OUT"), component("TabulaRasa", TabulaRasa.class), port("IN"));
38 |
39 | connect(component("TabulaRasa"), port("OUT"), component("Write", WriteToConsole.class), port("IN"));
40 |
41 | initialize("2000", component("Generate"), port("COUNT"));
42 |
43 | initialize("com.jpaulmorrison.fbp.core.components.Copy", component("TabulaRasa"), port("COMP"));
44 |
45 | }
46 |
47 | public static void main(final String[] argv) throws Exception {
48 | new CopyTR().go();
49 | }
50 | }
51 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/resourcekit/experimental/networks/TestBalloon.java:
--------------------------------------------------------------------------------
1 | package com.jpaulmorrison.fbp.resourcekit.experimental.networks;
2 |
3 |
4 | import com.jpaulmorrison.fbp.core.engine.Network;
5 | import com.jpaulmorrison.fbp.core.components.misc.GenerateTestData;
6 |
7 |
8 | /*
9 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
10 | * Copyright (C) 2009, 2016 J. Paul Morrison
11 | *
12 | * This library is free software; you can redistribute it and/or
13 | * modify it under the terms of the GNU Library General Public
14 | * License as published by the Free Software Foundation; either
15 | * version 3.0 of the License, or (at your option) any later version.
16 | *
17 | * This library is distributed in the hope that it will be useful,
18 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
19 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
20 | *
21 | * You should have received a copy of the GNU Library General Public
22 | * License along with this library; if not, see the GNU Library General Public License v3
23 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
24 | */
25 |
26 | public class TestBalloon extends Network {
27 |
28 |
29 | @Override
30 | protected void define() {
31 |
32 | connect(component("Gene\\ra\"te", GenerateTestData.class), port("OUT"),
33 | component("Balloon", com.jpaulmorrison.fbp.resourcekit.experimental.components.Balloon.class), port("IN"));
34 |
35 | connect(component("Balloon"), port("OUT"),
36 | component("Check", com.jpaulmorrison.fbp.resourcekit.examples.components.CheckBallooning.class), port("IN"), 1);
37 |
38 | initialize("200", component("Gene\\ra\"te"), port("COUNT"));
39 |
40 | }
41 |
42 | public static void main(final String[] argv) throws Exception {
43 | new TestBalloon().go();
44 | }
45 | }
46 |
--------------------------------------------------------------------------------
/src/main/java/com/jpaulmorrison/fbp/resourcekit/experimental/networks/TryBrowser.java:
--------------------------------------------------------------------------------
1 | /*
2 | * JavaFBP - A Java Implementation of Flow-Based Programming (FBP)
3 | * Copyright (C) 2009, 2016 J. Paul Morrison
4 | *
5 | * This library is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU Library General Public
7 | * License as published by the Free Software Foundation; either
8 | * version 3.0 of the License, or (at your option) any later version.
9 | *
10 | * This library is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 | *
14 | * You should have received a copy of the GNU Library General Public
15 | * License along with this library; if not, see the GNU Library General Public License v3
16 | * at https://www.gnu.org/licenses/lgpl-3.0.en.html for more details.
17 | */
18 |
19 | package com.jpaulmorrison.fbp.resourcekit.experimental.networks;
20 |
21 |
22 | import com.jpaulmorrison.fbp.core.components.routing.Discard;
23 | import com.jpaulmorrison.fbp.core.components.routing.Kick;
24 | import com.jpaulmorrison.fbp.resourcekit.experimental.components.ShowURL;
25 | import com.jpaulmorrison.fbp.core.engine.Network;
26 |
27 |
28 | public class TryBrowser extends Network {
29 |
30 | /**
31 | * This does not work from Eclipse - it has to be driven by JWS
32 | * using a JNLP file, which in turn invokes this network definition.
33 | * ShowURL drives an HTML file called tryform.htm, which uses JavaScript.
34 | * */
35 |
36 |
37 | @Override
38 | protected void define() {
39 | connect(component("Kick", Kick.class), port("OUT"), component("ShowURL", ShowURL.class), port("IN"));
40 | component("Discard", Discard.class);
41 | connect("ShowURL.OUT", "Discard.IN");
42 | }
43 |
44 | public static void main(final String[] argv) throws Exception {
45 | new TryBrowser().go();
46 | }
47 | }
48 |
--------------------------------------------------------------------------------
/src/main/resources/testdata/21lines.txt:
--------------------------------------------------------------------------------
1 | 01 Flow-Based Programming (FBP) is a new/old approach to
2 | 02 application development, based on processes and data
3 | 03 flows. Some of its roots can be traced all the way back
4 | 04 to the early days of computing, and yet it offers solutions to many of the most pressing problems facing application development today. Interestingly, an early version of this software and methodology has been in continuous use for over 30 years processing millions of transactions a day for a large bank.
5 | 05 FBP views applications as networks of processes
6 | 06 communicating by means of streams of data objects
7 | 07 travelling across "bounded buffer" connections.
8 | 08 Processes access their connections indirectly, via
9 | 09 "ports", so components can be black boxes, able to be
10 | 10 reused in different arrangements to produce different
11 | 11 applications, without having to be changed internally.
12 | 12 FBP is thus naturally component-oriented. It also
13 | 13 performs extremely well, frequently resulting in reduced
14 | 14 elapsed times compared with conventional methodologies.
15 | 15 While many of FBP's concepts have been discovered
16 | 16 independently, the combination is unique and implies a
17 | 17 definite paradigm shift in the way in which applications
18 | 18 are developed and, more importantly, maintained.
19 | 19 The result has proven its effectiveness by having been
20 | 20 in continuous use in a very dynamic and demanding
21 | 21 environment for over 3 decades.
--------------------------------------------------------------------------------
/src/main/resources/testdata/dfile:
--------------------------------------------------------------------------------
1 | 111AA11111 D
2 | 111AA11111 D
3 | 111AA11111 D
4 | 111AA22222 D
5 | 111AA22222 D
6 | 111BB44444 D
7 | 111BB44444 D
8 | 111BB55555 D
9 | 222AA22222 D
10 | 222AA22222 D
11 | 222BB22222 D
12 | 222BB22222 D
13 | 222BB44444 D
14 | 222CC11111 D
15 | 222CC11111 D
16 | 222DD11111 D
17 | 222DD22222 D
--------------------------------------------------------------------------------
/src/main/resources/testdata/emptyfile.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/src/main/resources/testdata/emptyfile.txt
--------------------------------------------------------------------------------
/src/main/resources/testdata/input.txt:
--------------------------------------------------------------------------------
1 | Abstract:
2 |
3 | Flow-Based Programming (FBP) is a new/old approach to
4 | application development, based on processes and data
5 | flows. Some of its roots can be traced all the way back
6 | to the early days of computing, and yet it offers solutions to many of the most pressing problems facing application development today. Interestingly, an early version of this software and methodology has been in continuous use for over 30 years processing millions of transactions a day for a large bank.
7 | FBP views applications as networks of processes
8 | communicating by means of streams of data objects
9 | travelling across "bounded buffer" connections.
10 | Processes access their connections indirectly, via
11 | "ports", so components can be black boxes, able to be
12 | reused in different arrangements to produce different
13 | applications, without having to be changed internally.
14 | FBP is thus naturally component-oriented. It also
15 | performs extremely well, frequently resulting in reduced
16 | elapsed times compared with conventional methodologies.
17 | While many of FBP's concepts have been discovered
18 | independently, the combination is unique and implies a
19 | definite paradigm shift in the way in which applications
20 | are developed and, more importantly, maintained.
21 | The result has proven its effectiveness by having been
22 | in continuous use in a very dynamic and demanding
23 | environment for over 3 decades.
--------------------------------------------------------------------------------
/src/main/resources/testdata/mfile:
--------------------------------------------------------------------------------
1 | 111AA11111 M
2 | 111AA22222 M
3 | 111BB44444 M
4 | 222AA11111 M
5 | 222AA22222 M
6 | 222BB22222 M
7 | 222BB33333 M
8 | 222BB44444 M
9 | 222CC11111 M
--------------------------------------------------------------------------------
/src/main/resources/testdata/persons.csv:
--------------------------------------------------------------------------------
1 | "J. Paul Morrison", "Addison Avenue 7", "New County", "Canada"
2 | "Guus Bonnema", "eigenstraat 20", "Zuid Holland", "Nederland"
--------------------------------------------------------------------------------
/src/main/resources/testdata/script_test.js:
--------------------------------------------------------------------------------
1 | println("script_test.js - data:" + data);
2 | data += " - modified"
--------------------------------------------------------------------------------
/src/main/resources/testdata/temp:
--------------------------------------------------------------------------------
1 | 000040abcd
2 | 000039abcd
3 | 000038abcd
4 | 000037abcd
5 | 000036abcd
6 | 000035abcd
7 | 000034abcd
8 | 000033abcd
9 | 000032abcd
10 | 000031abcd
11 | 000030abcd
12 | 000029abcd
13 | 000028abcd
14 | 000027abcd
15 | 000026abcd
16 | 000025abcd
17 | 000024abcd
18 | 000023abcd
19 | 000022abcd
20 | 000021abcd
21 | 000020abcd
22 | 000019abcd
23 | 000018abcd
24 | 000017abcd
25 | 000016abcd
26 | 000015abcd
27 | 000014abcd
28 | 000013abcd
29 | 000012abcd
30 | 000011abcd
31 | 000010abcd
32 | 000009abcd
33 | 000008abcd
34 | 000007abcd
35 | 000006abcd
36 | 000005abcd
37 | 000004abcd
38 | 000003abcd
39 | 000002abcd
40 | 000001abcd
41 |
--------------------------------------------------------------------------------
/src/main/resources/testdata/testdata.txt:
--------------------------------------------------------------------------------
1 | Abstract:
2 |
3 | Flow-Based Programming (FBP) is a new/old approach to
4 | application development, based on processes and data
5 | flows. Some of its roots can be traced all the way back
6 | to the early days of computing, and yet it offers solutions to many of the most pressing problems facing application development today. Interestingly, an early version of this software and methodology has been in continuous use for over 30 years processing millions of transactions a day for a large bank.
7 | FBP views applications as networks of processes
8 | communicating by means of streams of data objects
9 | travelling across "bounded buffer" connections.
10 | Processes access their connections indirectly, via
11 | "ports", so components can be black boxes, able to be
12 | reused in different arrangements to produce different
13 | applications, without having to be changed internally.
14 | FBP is thus naturally component-oriented. It also
15 | performs extremely well, frequently resulting in reduced
16 | elapsed times compared with conventional methodologies.
17 | While many of FBP's concepts have been discovered
18 | independently, the combination is unique and implies a
19 | definite paradigm shift in the way in which applications
20 | are developed and, more importantly, maintained.
21 | The result has proven its effectiveness by having been
22 | in continuous use in a very dynamic and demanding
23 | environment for over 3 decades.
--------------------------------------------------------------------------------
/src/main/resources/testdata/tune.txt:
--------------------------------------------------------------------------------
1 | 330, 250, // Quarter E
2 | 330, 250, // Quarter E
3 | 330, 500, // Half E
4 | 330, 250, // Quarter E
5 | 330, 250, // Quarter E
6 | 330, 500, // Half E
7 | 330, 250, // Quarter E
8 | 392, 250, // Quarter G
9 | 262, 375, // 3/8 C
10 | 294, 125, // 1/8 D
11 | 330, 500, // 1/2 E
--------------------------------------------------------------------------------
/testdata/21lines.txt:
--------------------------------------------------------------------------------
1 | 01 Flow-Based Programming (FBP) is a new/old approach to
2 | 02 application development, based on processes and data
3 | 03 flows. Some of its roots can be traced all the way back
4 | 04 to the early days of computing, and yet it offers solutions to many of the most pressing problems facing application development today. Interestingly, an early version of this software and methodology has been in continuous use for over 30 years processing millions of transactions a day for a large bank.
5 | 05 FBP views applications as networks of processes
6 | 06 communicating by means of streams of data objects
7 | 07 travelling across "bounded buffer" connections.
8 | 08 Processes access their connections indirectly, via
9 | 09 "ports", so components can be black boxes, able to be
10 | 10 reused in different arrangements to produce different
11 | 11 applications, without having to be changed internally.
12 | 12 FBP is thus naturally component-oriented. It also
13 | 13 performs extremely well, frequently resulting in reduced
14 | 14 elapsed times compared with conventional methodologies.
15 | 15 While many of FBP's concepts have been discovered
16 | 16 independently, the combination is unique and implies a
17 | 17 definite paradigm shift in the way in which applications
18 | 18 are developed and, more importantly, maintained.
19 | 19 The result has proven its effectiveness by having been
20 | 20 in continuous use in a very dynamic and demanding
21 | 21 environment for over 3 decades.
--------------------------------------------------------------------------------
/testdata/dfile:
--------------------------------------------------------------------------------
1 | 111AA11111 D
2 | 111AA11111 D
3 | 111AA11111 D
4 | 111AA22222 D
5 | 111AA22222 D
6 | 111BB44444 D
7 | 111BB44444 D
8 | 111BB55555 D
9 | 222AA22222 D
10 | 222AA22222 D
11 | 222BB22222 D
12 | 222BB22222 D
13 | 222BB44444 D
14 | 222CC11111 D
15 | 222CC11111 D
16 | 222DD11111 D
17 | 222DD22222 D
--------------------------------------------------------------------------------
/testdata/emptyfile.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpaulm/javafbp/1bd053e39fae61be916abe4e3feb73f7a00733d5/testdata/emptyfile.txt
--------------------------------------------------------------------------------
/testdata/input.txt:
--------------------------------------------------------------------------------
1 | Abstract:
2 |
3 | Flow-Based Programming (FBP) is a new/old approach to
4 | application development, based on processes and data
5 | flows. Some of its roots can be traced all the way back
6 | to the early days of computing, and yet it offers solutions to many of the most pressing problems facing application development today. Interestingly, an early version of this software and methodology has been in continuous use for over 30 years processing millions of transactions a day for a large bank.
7 | FBP views applications as networks of processes
8 | communicating by means of streams of data objects
9 | travelling across "bounded buffer" connections.
10 | Processes access their connections indirectly, via
11 | "ports", so components can be black boxes, able to be
12 | reused in different arrangements to produce different
13 | applications, without having to be changed internally.
14 | FBP is thus naturally component-oriented. It also
15 | performs extremely well, frequently resulting in reduced
16 | elapsed times compared with conventional methodologies.
17 | While many of FBP's concepts have been discovered
18 | independently, the combination is unique and implies a
19 | definite paradigm shift in the way in which applications
20 | are developed and, more importantly, maintained.
21 | The result has proven its effectiveness by having been
22 | in continuous use in a very dynamic and demanding
23 | environment for over 3 decades.
--------------------------------------------------------------------------------
/testdata/mfile:
--------------------------------------------------------------------------------
1 | 111AA11111 M
2 | 111AA22222 M
3 | 111BB44444 M
4 | 222AA11111 M
5 | 222AA22222 M
6 | 222BB22222 M
7 | 222BB33333 M
8 | 222BB44444 M
9 | 222CC11111 M
--------------------------------------------------------------------------------
/testdata/persons.csv:
--------------------------------------------------------------------------------
1 | "J. Paul Morrison", "Addison Avenue 7", "New County", "Canada"
2 | "Guus Bonnema", "eigenstraat 20", "Zuid Holland", "Nederland"
--------------------------------------------------------------------------------
/testdata/script_test.js:
--------------------------------------------------------------------------------
1 | println("script_test.js - data:" + data);
2 | data += " - modified"
--------------------------------------------------------------------------------
/testdata/temp:
--------------------------------------------------------------------------------
1 | 000040abcd
2 | 000039abcd
3 | 000038abcd
4 | 000037abcd
5 | 000036abcd
6 | 000035abcd
7 | 000034abcd
8 | 000033abcd
9 | 000032abcd
10 | 000031abcd
11 | 000030abcd
12 | 000029abcd
13 | 000028abcd
14 | 000027abcd
15 | 000026abcd
16 | 000025abcd
17 | 000024abcd
18 | 000023abcd
19 | 000022abcd
20 | 000021abcd
21 | 000020abcd
22 | 000019abcd
23 | 000018abcd
24 | 000017abcd
25 | 000016abcd
26 | 000015abcd
27 | 000014abcd
28 | 000013abcd
29 | 000012abcd
30 | 000011abcd
31 | 000010abcd
32 | 000009abcd
33 | 000008abcd
34 | 000007abcd
35 | 000006abcd
36 | 000005abcd
37 | 000004abcd
38 | 000003abcd
39 | 000002abcd
40 | 000001abcd
41 |
--------------------------------------------------------------------------------
/testdata/testdata.txt:
--------------------------------------------------------------------------------
1 | Abstract:
2 |
3 | Flow-Based Programming (FBP) is a new/old approach to
4 | application development, based on processes and data
5 | flows. Some of its roots can be traced all the way back
6 | to the early days of computing, and yet it offers solutions to many of the most pressing problems facing application development today. Interestingly, an early version of this software and methodology has been in continuous use for over 30 years processing millions of transactions a day for a large bank.
7 | FBP views applications as networks of processes
8 | communicating by means of streams of data objects
9 | travelling across "bounded buffer" connections.
10 | Processes access their connections indirectly, via
11 | "ports", so components can be black boxes, able to be
12 | reused in different arrangements to produce different
13 | applications, without having to be changed internally.
14 | FBP is thus naturally component-oriented. It also
15 | performs extremely well, frequently resulting in reduced
16 | elapsed times compared with conventional methodologies.
17 | While many of FBP's concepts have been discovered
18 | independently, the combination is unique and implies a
19 | definite paradigm shift in the way in which applications
20 | are developed and, more importantly, maintained.
21 | The result has proven its effectiveness by having been
22 | in continuous use in a very dynamic and demanding
23 | environment for over 3 decades.
--------------------------------------------------------------------------------
/testdata/tune.txt:
--------------------------------------------------------------------------------
1 | 330, 250, // Quarter E
2 | 330, 250, // Quarter E
3 | 330, 500, // Half E
4 | 330, 250, // Quarter E
5 | 330, 250, // Quarter E
6 | 330, 500, // Half E
7 | 330, 250, // Quarter E
8 | 392, 250, // Quarter G
9 | 262, 375, // 3/8 C
10 | 294, 125, // 1/8 D
11 | 330, 500, // 1/2 E
--------------------------------------------------------------------------------