licas Changelog

What's new in licas 4.23

Aug 17, 2015
  • Bug fixes, GUI and problem solver updates:
  • A new hill climbing search algorithm with a 'Search_Hill_Climb' tag.
  • Data files and other bug fixes. Data type sometimes now the resuorce type, when retrieved for display.
  • Small amount of stats processing for the dynamic links and problem solver. Still down to interpretation, but output is displayed at the end of a test run.
  • The timer in a GUI might not automatically shut down. Fixed in the next version with relation to the Info Service viewer.
  • InfoURL returns the file contents now, not the URL path.
  • Other bug fixes.

New in licas 4.22 (May 8, 2015)

  • Some metadata changes, in particular when saving to or from a file using the GUI menu 'Save SOA' options. This will change the existing metadata structure, so if this is currently used and there is a problem, you will need to contact me and I will try to write a convertor. It is unlikely to be a perfect solution in any case. You may need to manually add parameter sections for constructors, for example, so even not all of the default services can be automatically saved and re-loaded, but more basic configs can.
  • The data generator script has been updated, so that they can be re-initialised through the script again.
  • The parser classes have been updated a bit. The Parsers 'public Object serialize(Object obj)' renamed 'public String serializeToString(Object obj)', with a new 'public Element serializeToElement(Object obj)' and 'serializeToFile' added. It is mostly used internally by the system communication, but if you use it and expect to receive a String, then simply update to serializeToString in the next version. Note you have to use one of these 3 methods now.
  • The Parsers.parse method now requires either a String or an Element as well. If passing an Object, you need to call parseObject(obj) instead.
  • Also in Parsers, the 'createObject' method has been separated and some more strict typing added to the parsing in general.
  • There might have been an infinite loop depending on how the default parsers were used, for simply a String value. This particular bug should be fixed now. All of the default methods should work as before.
  • There might be some performance improvements.
  • There is a chance of bugs with this update, so if any are found, I will be happy to correct them.

New in licas 4.21.2 (May 5, 2015)

  • The parser classes have been updated a bit. The Parsers 'public Object serialize(Object obj)' renamed 'public String serializeToString(Object obj)', with a new 'public Element serializeToElement(Object obj)' and 'serializeToFile' added. It is mostly used internally by the system communication, but if you use it and expect to receive a String, then simply update to serializeToString in the next version. Note you have to use one of these 3 methods now.
  • The Parsers.parse method now requires either a String or an Element as well. If passing an Object, you need to call parseObject(obj) instead.
  • Also in Parsers, the 'createObject' method has been separated and some more strict typing added to the parsing in general.
  • There might have been an infinite loop depending on how the default parsers were used, for simply a String value. This particular bug should be fixed now. All of the default methods should work as before.
  • There might be some performance improvements.
  • There is a chance of bugs with this update, so if any are found, I will be happy to correct them.

New in licas 4.21.1 (Apr 8, 2015)

  • NEW SERVICE, UPDATES AND BUG FIXES:
  • Re-compiled under J2SE 1.5 and new look logos, as the mobile client is no longer integral to the system.
  • New Message Board service, with some bug fixes. Released now as easier to do it this way and hopefully get some feedback on any remaining bugs. The refresh rate is currently every two minutes.
  • I do not have a proper distributed environment to test with. It might be best to try it in a restricted environment to start with. Apologies for quick release so soon after version 4.20.
  • InformationService and info resource objects updated. Some of the automatic metadata creators for the resource objects might have been out of date. The GUI can now be used as a slide show and a new service is on the way. New release now because of the other updates and bug fixes
  • When the Service Factory is opened, the Email service form accidentally opened as well. A bit of testing code was accidentally left in it, which has been removed.
  • IP now just 127.0.0.1, for example. URL is now http://ip+port, and URI is the full Handle description. The method names have been updated to try to avoid confusion.
  • Handle.getUri, hasUri and removeUri renamed getURL, .... AddressInfo.serverIP changed to serverURL. IP address used instead of URL in a lot of the code, so this will be changed to URL wherever it is found, so will probably need to check for that. HttpServer.getIpAddress now HttpServer.getServerURL. Probably worst is MethodInfo.setServerUri and related changed to setServerURL, etc. Also, ...Uri is renamed ...URI (capitals). You will need an editor, but it only takes seconds to update.
  • IpV6 addresses can change the ip format and so the code now explicitly states the ipV4 format. The code has also been updated to try to remove the loopback address as the default one. See the new code example for how to start the server.
  • Other bug fixes and improvements that might help with some of the functionality as well.

New in licas 4.21 (Apr 3, 2015)

  • Re-compiled under J2SE 1.5 and new look logos, as the mobile client is no longer integral to the system.
  • New Message Board service. Released now as easier to do it this way and hopefully get some feedback on bugs. I do not have a distributed environment to test with. It might be best to try it in a restricted environment to start with. Apologies for quick release so soon after version 4.20.
  • InformationService and info resource objects updated. Some of the automatic metadata creators for the resource objects might have been out of date. The GUI can now be used as a slide show and a new service is on the way. New release now because of the other updates and bug fixes
  • When the Service Factory is opened, the Email service form accidentally opened as well. A bit of testing code was accidentally left in it, which has been removed.
  • IP now just 127.0.0.1, for example. URL is now http://ip+port, and URI is the full Handle description. The method names have been updated to try to avoid confusion.
  • Handle.getUri, hasUri and removeUri renamed getURL, .... AddressInfo.serverIP changed to serverURL. IP address used instead of URL in a lot of the code, so this will be changed to URL wherever it is found, so will probably need to check for that. HttpServer.getIpAddress now HttpServer.getServerURL. Probably worst is MethodInfo.setServerUri and related changed to setServerURL, etc. Also, ...Uri is renamed ...URI (capitals). You will need an editor, but it only takes seconds to update.
  • IpV6 addresses can change the ip format and so the code now explicitly states the ipV4 format. The code has also been updated to try to remove the loopback address as the default one. See the new code example for how to start the server.
  • Other bug fixes and improvements that might help with some of the functionality as well.

New in licas 4.20 (Mar 31, 2015)

  • Updates and bug fixes:
  • Re-compiled under J2SE 1.5 and new look logos, as the mobile client is no longer integral to the system.
  • InformationService and info resource objects updated. Some of the automatic metadata creators for the resource objects might have been out of date. The GUI can now be used as a slide show and a new service is on the way. New release now because of the other updates and bug fixes
  • When the Service Factory is opened, the Email service form accidentally opened as well. A bit of testing code was accidentally left in it, which has been removed.
  • IP now just 127.0.0.1, for example. URL now http://.... and URI is the Handle description. The method names have been updated to try to avoid confusion.
  • Handle.getUri, hasUri and removeUri renamed getURL, .... AddressInfo.serverIP changed to serverURL. IP address used instead of URL in a lot of the code, so this will be changed to URL wherever it is found, so will probably need to check for that. HttpServer.getIpAddress now HttpServer.getServerURL. Probably worst is MethodInfo.setServerUri and related changed to setServerURL, etc. Also, ...Uri is renamed ...URI (capitals). You will need an editor, but it only takes seconds to update.
  • IpV6 addresses can change the ip format and so the code now explicitly states the ipV4 format. The code has also been updated to try to remove the loopback address as the default one. See the new code example for how to start the server.
  • Other bug fixes and improvements that might help with some of the functionality as well.

New in licas 4.19.1 (Mar 20, 2015)

  • The script 'autoEngineAdmin.xml' should have been removed from the xmlSchemas package as it has been re-written.
  • Some new Auto script elements - While and Otherwise. Also a number of important updates and bug fixes.
  • A simple json parser added to the text package.
  • Also when removing symbols, hyphenated words are now kept, but there may still be a problem at the end of lines. The decision here is to remove all hyphens at the end of lines, so hyphenated words should be OK anywhere else, but may lose the hyphen if they span two lines.
  • Search engine invoking now improved where it should be possible to get lists of URLs for different vendor searches and page numbers. Some other bug fixes here as well.

New in licas 4.18.1 (Feb 3, 2015)

  • In the Auto script, a source reference can now be a web service as well, referenced by the wsdl document.
  • Most element 'create' methods moved to the MetaFactory class itself, so maybe a method move there.
  • Some WSDL parser updates. Still need to be careful when using, but it should be easier to setup now, if using the code by itself.

New in licas 4.18 (Jan 10, 2015)

  • Updates and bug fixes:
  • AutoServer now called EBS for Enterprise Service Bus. This puts it in context of finding services and passing the methods to execute on them. EBS.'serverService' renamed 'executeServiceType'. 'asServerService' now 'asTypeService'. HttpServer.'hasAutoServer' now 'hasESB'. No real changes here, but maybe easier to then map to the known SOA architecture.
  • AutoEngine script changed completely to a new BPEL format, with some additions. See the examples and the 'licasAuto' document for details.
  • BehaviourService removed, where you can now use Auto directly, or a new DataService for scientific testing. LinkService extends DataService instead. Most of the auto loop now passes MessageInfo objects only.
  • New sci package for the scientific services. Simply update where there is an exception. It looks like a lot, but it will require only a small amount of coding to update. Backward compatibility should be checked for, where classnames in scripts should get updated. The only major user re-write is a new script format.
  • Some service GUI interface updates. Should be able to use passwords with utility services.
  • In the text processing package, whitespace was added when removing the xml tags (XmlHtmlHandler.removeXmlTags) , which has been fixed. The specific method also parses badly-formed, or bits, of XML, where any alternative XML parser can be used instead.
  • Random number generator bug fix when using from the GUI.
  • With the SOM, sometimes a smaller value is better, depending on the evaluation function. So an explicit method call can be used to return the best node.
  • AI algorithm updates.

New in licas 4.17.2 (Nov 27, 2014)

  • Updates and bug fixes:
  • The Email service GUI fixes. It should work better now and is still limited to sending text messages.
  • AI algorithm Hyper-heuristic updates. The Grid framework has been changed slightly as to how it removed solutions between other ones. The maximum number should now be made small in the first instance. You should update your scripts to the default ones in the solver folder, if you use them. The Max_Matches value. Nothing definitive here, so it might change again and if it causes problems then I can change it back.

New in licas 4.17.1 (Nov 21, 2014)

  • Updates and bug fixes:
  • Small menu for utility services through the GUI.
  • Note that the GUI initialisation should now be passed the full service URI and not the server URI. See the code.
  • The InformationService had a recent bug when trying to retrieve its contents. Should be fixed.
  • Handle.removeFirstServiceHandle or Handle.removeLastServiceHandle were incorrect.
  • Name change. Hyper-heuristic matching grid classes moved to 'grid' from 'genetic' packages.
  • The licas_exception package has been moved to the logger. Again just a package name change, but also some more functionality.
  • There is a new GUI interface for the email service. It is only to configure it or invoke a send request, not a fully working client. It is also still under construction, but this release is for the bugs mentioned above. The documentation will also be updated in the next version, but the GUI works in part (HotMail), so it can be tested.

New in licas 4.17 (Oct 29, 2014)

  • The SOM neural network has been integrated with the main system. It is possible to run a test using it, but as there is only 1 data row, it is not very useful. The data row is the list of services' data. This will be looked at again in the near future.
  • Problem solver package and name changes again, to try to make things clearer. I will be happy to assist with resolving any confusion, if you are adding your own classes.
  • Behaviour panel bug fix and other GUI updates.
  • Query service updates. You should be able to perform text queries over the metadata as well.
  • NumberDataGenerator was a little bit incorrect.

New in licas 4.16 (Oct 17, 2014)

  • More changes to the class structure in the problem solver package, to try to simplify the hierarchy. Some of the classes are probably not needed and so have been removed. Some name changes, but the same functionality.
  • A number of bug fixes in both the problem solver and ai heuristic packages. Some potentially serious ones. If something did not work before it might work now, but this cannot be guaranteed for everything. Reporting any bugs will speed this up.
  • Query form: the numerical query type should now be correctly identified
  • ServerConfig is now protected in HttpServer and so can be accessed.
  • In the Admin panel of the All-in-One GUI, max nodes referred to all services, including the child or nested ones. This is now more accurate, referring to the base services in general.
  • Some communication bug fixes. Using a packet size might have had 1 bug.

New in licas 4.15 (Oct 1, 2014)

  • Some more GUI and service updates, with a number of bug fixes.
  • New query form for the query panel and websearch folder.
  • New server admin contact field, so re-save config settings as soon as load in GUI.
  • Service updates for the messenger and the web service.
  • Text processing package bug fixes and updates.

New in licas 4.14 (Sep 12, 2014)

  • MessageService - 'Remove Conversation' button has been removed.
  • WebServiceMethodInfo constructor does not currently set the parameters list. Added, of type ParamInfo.
  • Ability to drag files to copy them missing from the File Service fixed.
  • New config options for both the file and the web services.
  • HTTPS protocol now possible for the server.

New in licas 4.13 (Sep 9, 2014)

  • Minor bug in the ServiceWrapper, asks for an Auto not a Service class. This is fixed and allows the service apps to work properly again.
  • New group addresses setting for the message service.
  • AI heuristics, Cosine function now included as a Taylor series.

New in licas 4.12 (Aug 12, 2014)

  • A minor error with the query engine has been fixed.
  • Final refactoring probably. Package 'org.licas.autonomic' renamed 'org.licas' and 'org.licas.autonomic.manager' renamed 'org.licas.autonomic'.
  • Added activation functions to the dynamic linking mechanism and updated. Possibly an error fix as well, especially with the GUI query panel.
  • InformationService initialisation error fixed - if it did not have a 'Data' element in the admin script.
  • The GUI AI panels now also allow the constructors to be set, including an admin (with possibly auto policy) script.
  • Also updated for more class types and using the service factory to add a new solver factory might even work. Tests have added a new solver factory to the GUI config script and changed the values accordingly.
  • Web Services service updated.
  • Some documentation updates.

New in licas 4.11 (Jul 31, 2014)

  • ai_heuristic package: Updates to some of the functions for the more extreme cases.
  • Function.isBetter had the comparisons the wrong way around (val1 < val2) instead of (val2 < val21), etc.
  • BowHeuristic.sortTopTermOrder had wrong comparison sign, making the evaluations incorrect.
  • Linking services needed updating, where the algorithms are now a bit more correct. All data is used but not all clusters info is available. Note that the base class is run by an auto policy script.
  • Problem Solver panel has been updated, with a new place for entering the heuristic variables. You might need to check your script again.

New in licas 4.9.2 (Jul 9, 2014)

  • Ai Heuristic package: Function now has a set of config parameters and some functions should be initialised with them, instead of using the dataset parameters. You may need to check the initialisation criteria again, for example, NGram.
  • Some object conversion improvements - for the basic number types.
  • Also in 4.9.2, simple int cast mistake corrected, so please check again.
  • Some new functions and addition of a SOM neural network (http://jknnl.sourceforge.net/).
  • Still need to integrate SOM with the rest of the system, so you can see how to use the SOM directly from their web site (Java and C++ pages).
  • Problem Solver: some package name changes and OptimiseGrid now HyperHeuristicGrid. Overall functionality a bit limited, so new package names reflect that.
  • Still all works as before, so it is only a matter of updating some package names, but the new help methods should make things easier.

New in licas 4.9.1 (Jul 1, 2014)

  • Ai Heuristic package: Function now has a set of config parameters and some functions should be initialised with them, instead of using the dataset parameters. You may need to check the initialisation criteria again, for example, NGram.
  • Some object conversion improvements - for the basic number types.
  • Some new functions and addition of a SOM neural network (http://jknnl.sourceforge.net/). Still need to integrate with the rest of the system, so you can see how to use the SOM directly from their web site (Java and C++ pages).
  • Problem Solver: some package name changes and OptimiseGrid now HyperHeuristicGrid. Overall functionality a bit limited, so new package names reflect that.
  • Still all works as before, so it is only a matter of updating some package names, but the new help methods should make things easier.

New in licas 4.9 (Jun 18, 2014)

  • Autonomic Manager updated with some default functionality. See the new 'licasAuto' document an related script. Note that you do not have to use one.
  • In the ai heuristic package, 'LearnedFunctionSingle' changed to 'FunctionLearn' and some minor interface changes. Everything still works the same way, so it is just a matter of changing a class path or something. A 'newInstance' method needs to be implemented for some derived functions however, but it is simply that.
  • Basic implementation of a Markov model and Info Gain input data structure improved.
  • Some of the Object parameters have been removed, but are replaced by the licas 'MetricDataset' one.
  • The default 'sleep' time in the Auto class was set to 5 seconds, which is quite slow, so changed to 1 second, also monitor lock removed.
  • Potentially serious bug with parsers - the element 'detach' method also removes from the list, where the loop indexer can then skip over something.
  • When adding attributes to XML elements, need to make sure that neither field is null. Might be a current bug.
  • Try for new version this week.
  • A lot of recent changes, so continue to tidy this up and fix any bugs, but definitely download current version and update as required. Useful feedback appreciated.

New in licas 4.8.1 (Jun 5, 2014)

  • Some minor bug fixes, plus some ai algorithm updates.
  • Changed idf in ai_heuristic to Math.log(doc/count) but this can now produce a value of 0 if 1/1, so care with that. Also the BowHeuristic.sortTopTermOrder is incorrect.
  • New sort algorithm and minor update to the interface to the other ones.

New in licas 4.8 (May 23, 2014)

  • Creating variable instances from the admin script should now be possible. This requires that you add a method to your own service class, so the base Service is now abstract with a default BasicService version, with the method implemented. Everything else works as is and the call to create the variables is automatic. See the licasUserGuide for an example.
  • New utility Email service.
  • The communication IDs have been moved from Auto back to Service. They can be useful without the Auto functionality and so this means that you do not need to add empty Auto-derived methods to use them. Now saved as MessageInfo objects with timestamps and tries to clean-up any stored IDs older than 3 days.
  • Some updates to the web search engines, plus some changes there.
  • Some updates to the ai heuristics. String descriptions should now work better, for example, an Integer parsed from a double.
  • Double and long types added to the heuristics, but might need to cast to a reply to Double now. New random number generators and some new algorithms. Lots of package name changes, but all code works the same, so it is only a matter of re-declaring the package name.
  • There was an error with MetricCompare - if adding MetricDatasets with Vector lists, these are converted to Hashtables first and will lose their ordering. New version will keep the ordering, but Vectors and Hashtables still used.

New in licas 4.7 (Apr 24, 2014)

  • The code is still J2ME CDC and Java 6.
  • The lightweight server GUI (on DCS) has been updated to Java 8 and does not now load in a jar factory.
  • There are a number of minor changes that you will find and require a single update to correct. Everything works in the same way as before.
  • For the InfoResources - new infoDescr parameter for getInfo or getValue.
  • New resource containers that perform specific functions. Not fully tested but should work, so please email any feedback.
  • The InformationService can now be initialised with a resource through the admin script during the construction. It was not possible before. Creating a resource also now slightly easier.
  • For the InformationService - getSourceInfo also now has infoDescr parameter and getDataValue now getValue (also BehaviourService).
  • The NetworkParser and related are now called SoaParser and related. There is a new NetworkParser for the registered list of servers that can be accessed through the GUI.
  • Minor bug fix. If you call getFullPath on the server, it returns the HttpServer part twice. It should add it only once.
  • Some other minor changes. If something does not work, it is likely to be a single word change as indicated, but these updates should make things more clear.
  • RESTful client-side web services removed from package, as package is server-side there. Can stil use SOAP.
  • The Javadocs have been updated.

New in licas 4.6 (Apr 8, 2014)

  • Info resource updates and bug fixes. GUI updates.
  • InfoResource updates, including how data is retrieved. In the InformationService: loadFile now called loadDataContents, and loadFilePath now called loadDataDetails. Also now, MetaFactory.createDataXml and other InfoResource updates, so might need to check this. All still works the same way.
  • Potential problems with different data types fixed. Lots of changes there.
  • Main GUI ServiceFactory updates. You should be able to change default settings but can revert back if you then delete your own setting.
  • Method name change: LicasConfig getServiceModule... now just getService..., but easy to check for, so not a worry.
  • Server GUI updates, including generic invoke method panel.
  • Http Requests: If the server is password protected, a browser request can still make subsequent calls for other documents. Possibly only works for an uninterrupted call.
  • Documentation updated. Feel free to report any bugs.

New in licas 4.5 (Apr 8, 2014)

  • Communication protocol updates.
  • MethodInfo: 'getMethodParams' renamed 'retrieveParamValues' as it extracts the value from the ParamInfo object. New 'getMethodParameters' method to retrieve the list of ParamInfo objects themselves.
  • Some type checking in the restful-style communications is now possible - added as a 'pts' parameter. Also one bug fix.
  • Some provision for Array parameters in both the XML-RPC and the REST-style HTTP addresses.
  • Note that an array description uses | as a separator, as in [val1 | val2], not commas.

New in licas 4.4 (Apr 8, 2014)

  • Service updates and some other bug fixes.
  • Some service updates, including new binary or image resource.
  • Possibly some bug fixes in the query parser and process.
  • The linker learn methods have never been updated, so moved to the problem solver packag

New in licas 4.3 (Apr 8, 2014)

  • A basic security manager has been added. You can configure specific file locations for Internet access, but please check first.
  • Basic interface to WordNet added in the text package.
  • Some other GUI updates and bug fixes.
  • The Logging package has been updated. Now uses a single factory instance and is initialised by the command LoggerFactory.setLoggerFactory(new CustomLoggerFactory()) or something similar. Requires minimal changes to your current code.

New in licas 4.2 (Apr 8, 2014)

  • Web server updates and bug fixes.
  • Retrieval of files, including HTML, as in a basic web server, without the licas services. So you can now download HTML to your web browser directly. Please note if you use licas publically, it now gives access to the files on your computer, although password protection is still possible.
  • Some provision for sending images as part of an html page download.
  • Minor bug fix in the ai_heuristic text processing.
  • Error in the jLog2 tokenizer fixed. It does not now add empty tokens.
  • Some user guide doc updates.

New in licas 4.1 (Nov 11, 2013)

  • Bug fix with Web Service service invocation. Maybe still a timer error.
  • New GUI interface to the Information Service, for loading in data.
  • New GET method in Service class, overriden in InformationService, to return content from http call.
  • The invokeBehaviour method interface changed, where the service password parameter has been removed.
  • Some other class package moves, but still all the same code.
  • If there are specific queries, then please send an email, as further tutorials, etc. might be a while

New in licas 4.0 (Oct 28, 2013)

  • With the recent changes, everything has been bumped up a version level.
  • Meta classes split into current package and new model package for the description objects. Some constant values moved from Const to new MetaConst class, and some new functionality.
  • Problem Solver interface changed slightly. The single link service has been moved to the problem solver package.
  • A whole lot of bug fixes and minor updates. You might need to check over things if programming, but most changes should be forced.
  • PasswordHandler update - now checks both full URI and uuid only.
  • The parameters list passed to all Auto-derived evaluateBehaviour-related methods changed from Vector to Hashtable.
  • Minor bug in the XML package fixed.

New in licas 3.58 (Oct 16, 2013)

  • Ai-heuristic package: entropy corrected and looks better now. Also new Information Gain algorithm. Gives a similar result to a test example.
  • Licas_text package: QueryMediator update for the default metadata matching. Now has default true (Any_Structure), or other types of matching (All_Partial, All_Exact, Values_Partial, Values_Exact). Still only for testing but might be useful.
  • Load / Save SOA network parsing updated, but still limited. Now passes a hashtable instead of a vector file list. Saving a behaviour network is currently not possible because the data generators do not have empty constructors.

New in licas 3.57.2 (Oct 7, 2013)

  • Inverse Document Frequency calculation - Idf, in the ai_heuristic package changed back, with log factor removed.

New in licas 3.57 (Oct 2, 2013)

  • Information Service tidied up a bit more, but still needs further testing.
  • 'Other' service category renamed 'Personal'.
  • Some package name changes and minor interface changes to the ai_heuristic problem-solving package. Relatively easy to update to it. New Kullback-Leibler and Entropy evaluations.
  • The Hashtable that defined the path in the linking structure has been replaced by a dedicated Tree structure from the heuristic package. The adding links method now only has the simplest interface that uses Vectors. If that causes problems, I can add the other methods again.
  • The server graphic is staggered a bit more, to space out link lines. If it is not the easiest to look at, then I can change it again.
  • Some bug fixes related to the above changes.
  • The documentation will be updated in a day or two.

New in licas 3.56 (Sep 17, 2013)

  • Service Config form - 'Service or Gui Class' section needed correcting again. Changed the class that is chosen for the GUI.
  • New MetaFactory class to automatically create meta XML parts.
  • InformationService implementation changed. Can now store different information types through a resource object. Not fully tested but should work as before. Moved from the services package back to the main licas package.
  • Some testing of the evaluation metrics (euclidean distance, etc), they should be more reliable now.
  • String evaluator change - for adding / multiplying, etc. But this is made up for consistent values only, in any case.

New in licas 3.55 (Sep 7, 2013)

  • When first use the All-in-One GUI, problems with initial config file fixed.
  • Services now stored under categories as well. Existing services should get assigned a default category, but can then be changed.

New in licas 3.53 (Jul 11, 2013)

  • Minor Euclidean distance metric change and some other changes to the ai_heuristic package.
  • Package with dynamic linking mechanism: org.licas.autonomic.link changed to org.licas.service.link.auto, to be in line with the other services.
  • BehaviourService and related evaluation service changed. The new ContainsLinkService checks for containment only and returns a boolean. It produces better results now and over numerical data as well.
  • GUI updates. At least one serious graphic bug fix - did not always show all nodes. Other bug fixes. Some new components - one still to be completed. The popup menus return metadata as well now, including all sections.
  • Metadata updates. Tried to simplify the process. Smaller subset returned as default with the rest admin protected. See the documentation for details.
  • Also some Const values changed back to a full name. TYPE is 'Type' again, for example. So the Code Analyzer app, or existing metadata scripts will probably have to be re-done in the near future, but the short names look confusing.
  • Tested locally and OK. Bugs and documentation will be updated in future releases.

New in licas 3.52 (Jun 14, 2013)

  • There is a small bug in the text processing when removing symbols. Fixed in the next version.
  • Some bugs in the distance functions or metrics (Euclidean, Jaccard) fixed.
  • Classes in the problem solver package updated. You might need to create them slightly differently, but hopefully easier to use. Not fully tested, but this will happen as bugs are found. Still being used as is.
  • Evolve class now also returned by default for unknown data type.
  • New evolve using percentages class.

New in licas 3.51.1 (May 20, 2013)

  • UuidHandler moved to the logger package jLog2.
  • Name for a MetricValue added again as useful for direct comparisons.
  • The evaluation metrics have been updated to be more generally applicable. They currently might only work with the bag or words or the default settings. Some bug fixes.
  • New CosineSimilarity Metric.
  • If run a test and then clear the network. It should be possible to run another one now.
  • Some other minor updates, including GUI bug fixes.

New in licas 3.50.3 (Apr 26, 2013)

  • Improvement to the class loader. Can now load separate jars from a lib, or other, folder. Does not all have to be compiled together.
  • Minor bug fixes in the GUI and services.

New in licas 3.50.2 (Apr 12, 2013)

  • Service factory form simplified to only re-configure the script. Also easier to add own factory objects now.
  • Admin key parameter in constructor required for creating the service or jar factory. Might be useful later.

New in licas 3.50.1 (Apr 9, 2013)

  • ServiceRepository - minor bug fix. If remove metadata 'type', the service types list is not currently updated as well. Now also removed from the serviceTypes list. Not important for general use, only if you are programming or adding / removing modules.
  • Ai_heuristic package moved down the stack and also removed as open source code. It was not particularly interesting and will be used in different projects, so it needs to be moved to a lower level in the compilation process.
  • Some low-level licas classes also removed. Two exception classes now in the exception package and some 'Const' values moved to the ai_heuristic 'AiHeuristicConst' package. All still contained in the licas compilation, so it is just a matter of importing a different package name.
  • Ping method added to check if an address is reachable. Should help to prevent the GUI from hanging if the address is not reachable, but there can still be some delay.
  • Client or All-in-One GUI removed from sourceforge download. It can be downloaded as a setup.exe installer from the main DCS web site at http://distributedcomputingsystems.co.uk/licas.aspx.
  • There is now a 'data' folder as part of the default installation and the test data example is now located there. It is included as part of the installation and you can place your data folders there. So to use the problem solver, run the installed GUI and then run the problem solver script to execute on it.

New in licas 3.50 (Mar 22, 2013)

  • Service factory config form re-designed to make loading and using module jar files easier.
  • LoadObject update or bug fix. Also added to a new utils package, but it might work slightly better than before.

New in licas 3.49 (Mar 12, 2013)

  • Some more minor changes, but they should make using the code easier.
  • VOID type moved from Const to TypeConst. It is used more when declaring types.
  • New 'MethodConst' class for method names, which are also removed from Const now. Should be easier to see what is what.
  • Passwords problem with MethodInfo.createMethodCall bug fix.
  • A password problem with the default services and Auto run method now fixed. If there are other problems and you send an email, it will help to fix them.
  • Metadata description returned in slightly condensed format.
  • Some more WSDL parsing bug fixes - when convert to parameter list.
  • Web Service service updates, including enumerations.
  • The 'final' tag removed from all server class methods, to allow them to be overridden.
  • GUI panel updates, but provide same functionality. No component width now, but can use any previous config OK.
  • Graphic display updated and also allows customised icons that can be configured.
  • Display to network depth bug fix.

New in licas 3.48.1 (Mar 1, 2013)

  • The numerical text query processor can now read negative numbers.
  • Some more bug fixes in the web service service.
  • Wsdl parsing updates.
  • LoadObject changed slightly. Should work the same but maybe slightly cleaner now.

New in licas 3.48 (Feb 21, 2013)

  • The 'Const' class constant values have been split up into 3 or 4 new files. All of the values are the same, so it is just a matter of renaming the class file.
  • EvaluateContainsService now called TestContainsService, as it is more for test examples only.
  • New Web Service service. Not fully robust, but works as should.
  • New condition in the default Auto.run() method. If the timer is less than or equal to 0, then only one iteration is executed.
  • Other changes to the Auto process that makes it easier to execute a behaviour without an autonomic manager. Useful if using the class without loading onto a network first. See the new Web Service service for an example and the user guides.
  • Other service updates.

New in licas 3.47 (Dec 13, 2012)

  • Parser classes moved to a number of different packages now. Starting to build up, so may need to add different package references, but no other changes.
  • AdminParser - Const.TYPE changed to Const.SERVICETYPE as it relates to the service itself. You will need to update that field in any admin document, but as Const.TYPE is now shortened to just 'T', this is probably a good thing.
  • Network parser replaced with a new one. The previous one did not appear to work completely. If you have used it you will need to recreate and save the network again. If this causes a problem let me know and I will try to add the old parser as well.
  • The load/save network methods now changed to load/save soa.
  • Handle class interface and javadocs updated to be more clear. Some method name changes so just need to check when converting. Should be clear though.
  • Bug fix where child components not drawn on the graphic.
  • Program classes now installed into a root C:/DCS/Licas folder.

New in licas 3.46 (Nov 29, 2012)

  • The default service loading in a Service has been changed slightly. The possibility of adding your own local service loader is removed, but the default service loaders now allow uuids and passwords to be explicitly defined as well. The 'loadServiceLocally' method has been removed and the, 'addDefaultService' and the related service factory 'createDefaultService' methods updated.
  • The contract XML element has been replaced with a default wrapper class, plus some new help methods. Password negotiations should now use the new Contract object only.
  • Default 'yes' and 'no' contracts, also now used to initialise the server. A 'no' contract never returns the password and so makes the server password protected. The 'yes' contract always returns the password.
  • Text package - the search should now remove punctuation before performing exact matches on individual words.
  • Updates to the user guide and other documents. The user guide in particular needed rewriting.

New in licas 3.45 (Nov 7, 2012)

  • Now a complete set of classes for dynamic web services invocation.
  • You can invoke any web service from your Java code using the licas objects.

New in licas 3.44 (Sep 28, 2012)

  • Minor bug fix in Wsdl Parser. If port name and type do not match, the first saved port is now returned by default.
  • New methods to help with the automatic construction of a soap message from a wsdl description. See the User Guide for details.
  • Problem solver in version 3.43, with the new base classes, etc., code part was missing, but now fixed. The default test should now run.

New in licas 3.43 (Sep 14, 2012)

  • New slot in the problem solver script for an external script file path, to read any other values.
  • InformationMediator generalised to a ServiceMediator, with InformationMediator returned as the default type (got through factory). Some method name changes, but updating is relatively easy.
  • The MethodHandler tried to pase string values only, when other objects were involved. It might be relevant when using a path to access a service, nested inside of another one. A bug fix has solved this.
  • Other scientific panel bug fixes, mainly to do with correctly updating the script.
  • The test script is changed slightly, with regard to the optional new repeat run options. They are now placed together in a separate section called 'Repeat_Or_Stop'. You will need to check the new script for the new structure, or run the GUI for an example.

New in licas 3.42 (Aug 16, 2012)

  • There is now a script checker to perform some basic checks of the behaviour or problem solver scripts.
  • The network graphic has been changed again in an attempt to simplify the code. The cyclic links are still separate but now start at level 2 and not at the end of the hierarchical links.

New in licas 3.41 (Aug 13, 2012)

  • Licas and licas_mobile replaced by single licas jar created from J2ME project. It should work exactly as before, so please report any bugs. Additional jars have been added for missing classes. You will need to install java version 1.6.0_24 or earlier to run the server batch file now, or add it to your own J2SE project. It also runs from the J2SE GUI however without any other requirements.
  • Calls on a service to start child service threads should now retrieve the service itself, or the manager wrapper if not a licas service.

New in licas 3.40.1 (Jul 24, 2012)

  • Query language changed to the new one. The query examples are also changed.
  • Minor bug fix on new upload.

New in licas 3.39 (Jul 2, 2012)

  • New 'finaliseInitialisation' method now available to services. It is called at the end of the service being added. This allows the service to perform other actions, such as adding services to itself that are defined in the constructor admin document - as part of a new Services/Services_To_Load section, for example. Previously, the service initialisation would not have been fully completed to allow this.
  • Network graphic has been adjusted again, but cyclic linked groups are moved further along the graphic now. This will be kept at the moment as it also helps the view. Not sure what the GUI is being used for, so please send a message if this causes a problem
  • Improved scientific panel interfaces, with closer integration of the behaviour and the problem solving services. Some of the test script variables might need to be changed. This should work as before, with additional functionality, but if the GUI is used, the construction process is different and you might need to check things before running a test. If there are problems or bugs, if you send information about it, I can try to fix the problem more quickly.
  • Default behaviour classes changed to a more distributed setup. If you use the base classes, you might need to check this.
  • Service factory is now used to define the classes for the scientific or other panels. They are declared and saved as part of the config script. They can then be automatically loaded into the GUI during startup. You will need to add the InformationService for a 'Behaviour' functionality at least.
  • Bug fixes in Service and ServiceWrapper classes. Can now return a direct reference to the service object, even if it is not derived from licas classes. The object stored in a wrapper can now be retrieved directly.
  • The query language and format has changed slightly and has been updated. Query scripts might need to be changed as a result.
  • Documentation will continue to be updated.

New in licas 3.38.1 (Jun 15, 2012)

  • If the server is started and stopped a number of times, the connections should be shut down and re-started better now.
  • Graphic display might be a bit better, with some nodes linked at the same level moved to the next level.

New in licas 3.38 (Jun 8, 2012)

  • The Auto class is now abstract, meaning that if you use it you will have to implement its abstract methods. It works in the same way as before. If methods are not used, an empty implementation can be added instead.
  • One or two method names have been changed but everything works the same way as before. For example, 'executeQuery' on the server changed to a generic 'serverService' name. This allows different global services to be executed through the server, not just the query engine. Also check for toXml methods for retrieving xml-based info.
  • New GUI interface to a behaviour mediator service - a new server service. This can be programmed to display a better view of agent-based behaviours executing on a network. The general method connections are in place, so only one or two methods need to be implemented.
  • Protected static logger declarations changed to private and re-declared in each derived class.

New in licas 3.37 (May 30, 2012)

  • Minor GUI bug fixes.
  • Byte files stored in a more compact form, to allow for quicker processing over a network. Integrated into the FileObject and related classes.
  • Jar file modules now store a timestamp to record when they were saved.
  • Checking for the admin key in the password handler can now throw a PasswordException. Might need to catch this error.

New in licas 3.36 (May 23, 2012)

  • GUI interface to the file service bug fixes, including some interface changes. Note that the apps are for demonstrating how the system might work and are not commercial quality.
  • Also some new features, with regard to how the file contents are transferred. See the documentation for details.
  • Related JarFactory bug fix.

New in licas 3.34 (May 7, 2012)

  • The vertical gap between nodes can now be changed again. These admin settings are now also saved as part of the GUI config.
  • Potential infinite loop in the logger string handler - replace x with y - removed, as part of the logger update.
  • Some of the 'Const' class constant value names changed to allow for new ones. You might need to check this if you use them.
  • Some FileService methods changed slightly. This now passes a FileObject that can store different file types.
  • New JarFactory - can be used as a basic replacement for a URLClassLoader, to load service classes remotely. Still being developed, but can be used at the moment.
  • Documentation updated.

New in licas 3.33 (Apr 25, 2012)

  • All specific service implementations moved to the licas_services package. New method to retrieve public service classnames for default service types.
  • The GUI config can now be loaded before starting a server, but otherwise it should be the same. Probably more config changes in the future.
  • The service factory is no longer a service but a static reference. It is displayed on the graphic slightly differently.
  • GUI graphic bug fix.

New in licas 3.32.1 (Apr 18, 2012)

  • Minor bug fixes in wsdl parser and GUI graphic.

New in licas 3.32 (Mar 29, 2012)

  • The GUI configuration can now only be used for a server running on the GUI itself. If a remote server is registered, it cannot be configured from this file.
  • Other minor bug fixes - one in the wsdl parser.

New in licas 3.31.2 (Mar 20, 2012)

  • GUI still buggy, but possibly one fix for viewing more than one network. Should still run in any case.
  • If clear a network, a metadata bug needed fixed to properly reset the object for its child services.
  • Problems with creating networks of the test behaviour service type should be mostly resolved. This is only an example service and not a real one, but it was poorly implemented, which has been corrected.

New in licas 3.31.1 (Mar 17, 2012)

  • The default server properties of port and passwords can now be loaded before the server is started. The other values require the server to be started before they can be loaded as well.

New in licas 3.31 (Mar 15, 2012)

  • Fix for the problem of asynchronous message calling on J2ME. See the user guide for details. Might still be buggy.
  • The default server properties of port and passwords can now be saved and retrieved from the config file.

New in licas 3.30 (Feb 17, 2012)

  • Can now add your own service definitions to the default list loaded at startup. The current config file should be OK. If not delete it and re-load the modules.

New in licas 3.29 (Feb 10, 2012)

  • GUI updates - configuration of the GUI now possible with service factory and external modules details. Also the gui interfaces to a service can be saved in the config file. See the documentation for details.
  • NetworkParser updated - dynamic links can now be saved, but not re-loaded, as too much information is required.
  • If retrieve dynamic links as an XML description, some tag names and structure now changed.
  • The jlog2 logger updated to require a logging level for all log commands. This might require minor code changes (add logging level) but is important for general use.

New in licas 3.28.1 (Jan 12, 2012)

  • GUI updates.
  • Slightly more accurate when drawing the graphic.
  • Cyclic links bug fix.
  • Remove service option from the popup menu.

New in licas 3.28 (Dec 30, 2011)

  • Server updated to process RESTful-style HTTP POST requests directly from a browser, for example. You can now invoke a method through an HTML page running in a browser. An example html page in included in the download.
  • GUI Service tab update.
  • Documentation updated for the new server details.

New in licas 3.27.3 (Dec 14, 2011)

  • If retrieving dynamic links descriptions through the 'getAllDynamicLinkedSources' method, the Linker password set can now be different to the parent service passwords.
  • Wsdl parser bug fix. Multiple schema type sections can now be parsed.

New in licas 3.27.2 (Nov 24, 2011)

  • Internet package works slightly better, with fewer sockets closing. Both connection types (HTTP or URL) should now connect.
  • Wsdl parser bug fix. Simple type enumerations included now.
  • Some class name changes, also in the main licas package for the connection handlers. Now named for client or server specifically.
  • Minor GUI update - does not automatically remove the server address when an error is returned.

New in licas 3.26 (Nov 4, 2011)

  • Instant Messenger App and licas MessageService now works better. MessageService interface changed slightly.
  • New installer package from distributedcomputingsystems.co.uk web site. If you want to manually configure the GUI, you need to add the 'licasData' folder to your root user directory.
  • Socket thread and handler moved to licas_internet package.
  • Potentially critical thread lock in default Auto service's run method removed.
  • Some default search engine bug fixes.
  • Bug in evaluating Communication IDs fixed. Only needs to be removed at the end of the conversation.
  • Documentation updates to describe how to write an application. New getting started document.

New in licas 3.25 (Oct 14, 2011)

  • Problem Solver panel added to the GUI, to allow the problem solver to be run through the GUI.
  • Menu options to hide or display certain GUI panels.
  • Parser panel updates. Can now also load classes before a server is started.
  • Documentation updates.

New in licas 3.24.1 (Oct 7, 2011)

  • CommunicationID parameter removed from the Auto.messageReply method. The MethodInfo communication ID field should be used instead.
  • Enumerations removed from licas package (LoadObject only potential problem).
  • Service AdminInfo nullpointer problem removed when services are initialised.

New in licas 3.24 (Oct 5, 2011)

  • Autonomic/behaviour classes changed again. Some removed to try to simplify. Auto is again the base class, with AutoDefault removed. A behaviour class now extends Auto directly and is used as the base behaviour service. The autonomic manager is now more closely integrated with the Auto class as well. See the user guide for details.
  • GUI behaviour panel also changed to try to simplify, but works much the same.
  • Other AutonomicManager bug fixes.
  • Access level bug fix - now checks for all methods at the level.

New in licas 3.23.3 (Sep 29, 2011)

  • Service.addServiceAssociation method protected with the admin key.
  • NullPointer bug in GUI fixed.

New in licas 3.23.1 (Sep 23, 2011)

  • AdminParser class was changed and needed debugging again. The serializer did not work.
  • Some more GUI changes. Admin more configurable and other minor changes. Documentation needs updating, but will be done later.

New in licas 3.23 (Sep 22, 2011)

  • Some GUI updates and bug fixes.
  • Some autonomic-related components changed. Added functionality, as part of the framework, and some class changes.
  • Some more autonomic features implemented, but probably still buggy - see the documentation.
  • Probably need to extend AutoDefault instead of Auto now.
  • All references to the serviceKey changed to adminKey, and related method calls - getServiceKey now getAdminKey, etc.

New in licas 3.22.1 (Sep 15, 2011)

  • Network Panel - can now link servers through the popup menu.
  • Problem of loading autonomic manager probably OK. Error was in trying to load the abstract base class.

New in licas 3.22 (Sep 13, 2011)

  • A number of bug fixes in different parts of the system.
  • Default search system in place to search over the service metadata.
  • The Admin XML document used to initialise services has changed as a result of this. Keywords sections have now been added as well.
  • GUI - Network panel has some more popup menu options. Default search queries through the query panel now.
  • Class Service: serviceLinks changed to serviceAssociations, plus related method names. Service method code now moved to new classes to modularise it a bit.
  • CallObject - one bug fix when calling local server through this object.
  • Some of the documents have been re-written to match the new system features.
  • Some code changes, including classnames or packages for certain classes. Need to save new source code in an empty directory.

New in licas 3.21 (Aug 31, 2011)

  • Lots of minor bugs in the problem solver fixed. Looks much more correct now. New testing confirms more correct output. If testing with provided test script and data, can set the 'Link_Increment' value to something like 10.0, so that only one increment will from a link in the network gui view.
  • GUI updates for some bug fixes and also now search fields for searching classname lists. Still needs more work.
  • Can now do deep clone of elements in licas_xml package, where attributes correctly cloned as well.

New in licas 3.20 (Aug 6, 2011)

  • Link class has been made abstract. Now three different derived versions - see the online javadocs. The additional options, such as add negative or individual updates not tested recently and so it is not clear how well they work. This would need to be checked through testing. Basic operations such as memory management should work as before.
  • Problem solver made slightly more flexible. The clustering process can now be changed to your own classes (one public class) through the solver factory - in the same way that the other classes can be changed. So the default clustering is not definitive and should be changed for your own purposes. The documentation explains how to do this.
  • Some of the mathematical evaluation operator definitions used in the metrics also changed. Two of the more experimental evaluation functions have been removed, so hopefully the existing ones are now more correct.
  • The default problem solver results only use solution names. The default classes now keep the duplicate groups, so that links occurring more than once as a result of the clustering are also reinforced more than once. Not a definitive solution, so this is what you can change with new clustering classes.
  • One bug in the GUI removed that causes infinite looping when drawing the graphic.
  • Download now split into 3 separate parts: jars/executables, docs and source code.

New in licas 3.19.1 (Jul 20, 2011)

  • A link reference can be added at an initial level that is above the lowest level if the increment value would move it there. You can now view links created by the problem solver in a single iteration, by making the increment value larger than the threshold values. The initially created links should then be added at the link level and displayed.

New in licas 3.19 (Jul 12, 2011)

  • New problem sover framework written on-top of the main licas packages. Possibly still slightly buggy, but documentation accidentally released, so code now released as well. Should work in most cases. Can be used to organise a network through a search instead of direct link updates.

New in licas 3.18.1 (Jul 7, 2011)

  • Some bug fixes with the GUI graphic drawing. Not possible to make this completely robust, but please report any errors that you find.

New in licas 3.18 (Jun 22, 2011)

  • The GUI now draws the graphic in a slightly different way. Might fix some previous problems but not robustly tested.
  • New version of addService called 'addDefaultService', takes a default service name and if known, automatically adds an instance of it to the parent service, allocating it the same password and service key. A quick way to add default services to another one.
  • New licas_text package with classes for processing text from different sources.
  • New Information service in licas package, and the FileLoader has moved to the new package.
  • Minor change to the Parser class allows a String-based value to be sent remotely, even if it is in XML format.

New in licas 3.3 (Jun 29, 2009)

  • Limited Web Services functionality added for the J2SE platform.

New in licas 3.2 (Jun 22, 2009)

  • calling mechanism changed to use a MethodInfo object instead of an array of parameters. Has lead to clearer code.

New in licas 3.1.1 (Jun 9, 2009)

  • Some XML parsing errors removed.

New in licas 2.5.3 (May 8, 2009)

  • Server classes block direct access to the stored services. Need to use the communication protocol (CallObject) to access them or have the server service key.

New in licas 2.5.2 (Apr 21, 2009)

  • Message packets now handled by a file channel.