Lesson 1 : Your working environment


The Plan


  • Get to know our Editor, Eddie as we call it.
  • Learn about the Ibis console.


Introducing Eddie

Eddie is an online code editor based on Codemirror, which has been instrumental in a multitude of browser editor implementations. For example the developer tools in Chrome and Firefox have a Codemirror based editor, or Adobe Brackets, that also uses CM. In the spirit of the IAF, Codemirror is open source. Besides editing code Eddie can also display information about framework classes in the Navigator section and insert those in the editor. The third main capability is that it can send its files to an Ibis, thereby creating a back-end service. You can find Eddie at this url. Eddie was tested in Chrome so any ‘strange’ behavior could be solved by switching to Chrome.






The editor part has some basic functionality under the hood. As we will mainly be working with XML there is basic syntax checking and tag validation. Errors in your XML tags will result in red error markups. While using Eddie you can use ctrl-space to activate autocomplete. A drop down menu will appear with the tags available to you. Matching tags are highlighted and in the linenumbergutter you can fold your code with the small triangles. The Tag Library displays all IAF building blocks. These are roughly divided in 4 different components: Pipes, Receivers, Snippets and General tags. Toggle the radio buttons to view your selection. When you select an item the general information is displayed, including the available properties. You can select and modify these properties with the check and input boxes . The insert button adds this snippet to your code.


Eddie’s File Browser displays the files and folders you are working on. Click on the file to start editing it. Your filename is displayed in the navigation bar above the tabs. Your work is automatically saved in the local browser storage. The browser can be closed without loosing your files because they are stored in your local storage. Files and directories can be dragged and dropped.


Click this to send your current working tree to the Ibis. A Successful upload will result in a green dot, in case of failure a red dot appears.  
Click this to save your current work to the hard drive of your computer. The files will be saved to the location that is the default location of your browser, usually the ‘Downloads’ folder.
Click this to load a configuration in the file browser. You need a file with .zip extension. This can overwrite your current structure, but you are also allowed to merge a zip file with your current documents. Lastly you can choose to download the config that is currently running in your Ibis.  
Click this to insert the selected item in the editor window. In the tag library you can modify this item, view which properties are available, and give them values. Snippets will give you complete pieces of code, while general gives you miscellaneous tags.
Click this to automatically format your code.
Click this to erase your current file.
Click the dark blue pen to change a file or directory name and press enter to confirm. Clicking anywhere on the screen will also confirm the change. Click the red cross to delete a file. Be careful with this button. When you hit it, the selected file is gone.
Click this to add a new blank file. You can change the default name later.
Click this to add a new folder. To add existing files to the new folder you can drag them there.

The Ibis console

The console is an integral part of an Ibis. The console is a visual tool that gives feedback about the working of the Ibis. An Ibis is all about incoming and outgoing messages. In the console we can find information about how many messages have been processed, the content of those messages, their processing status and operations speed. Keep in mind that we are dealing with a tool that can process thousands and thousands of messages. That makes it vital to monitor and test our messages. You can reach the console at this url.



Now we’ll discuss some of the features of the console you need in this tutorial.

  The Adapter Status tab shows the general health of the adapters in the Ibis. Red, green and orange give the user an intuitive grasp of what needs our attention. An Ibis usually has some built in adapters, for example to manage interaction with a database. Adapters are ordered in tab-groups. For the purposes of this course, you have an own tab. In this case the user should look under the Ibis9 tab. In the example on the right you see an error message. For more information about possible errors look at the troubleshooting page.
  The Configuration tab shows the code of all the adapters in your Ibis. When you click the configuration tab more options appear. You can download a .zip file of the currently active configuration from the subtab Manage Configurations.
In the Test Pipeline tab you can test a specific adapter. To do so select the adapter you want to test. In the Message field you can enter your input. In our tutorials this will usually be XML or JSON. After you send the input you get either conformation that the test was a success or an error message.
The Scheduler is a functionality that does things that have to be done on a regular basis. You could think of cleaning up the database. These tasks run automatically. In our Ibis there’s a running task “CheckReload”, that reloads the Ibis when its configuration has changed. This happens every minute, so it could happen that you’ve uploaded your configuration and nothing happens. You can wait then for a minute, or trigger this task by hand.
The JDBC (Java Database Connectivity) tab is where you can find the database. You can execute queries here in MySQL.
The Testing tab is where you can find testing tools. Here you can examine your error messages more closely by using Ladybug. Ladybug offers the exact flow of events in your application. You can find more information about Ladybug on the troubleshooting page.


Leave a Comment