Skip to content

gomezgoiri/CLIPSJNI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CLIPSJNI

In this project I made the following improvements to the original CLIPSJNI project:

  • More "standardized" package name: net.sf.clipsrules.
  • Throwing exceptions instead of only printing errors on the stdout.
  • Inline documentation for Environment class' methods and value classes. The idea is to make Java developers' life easier.
  • Mavenizing the project (and the original demo applications).
  • Creating an OSGi compliant jar.
  • Changes on Value's classes design.
  • In the 0.3 version PrimitiveValue defined all the methods inherited by the subclasses. Each of these methods throw a generic Exception and were overriden in each subclass. IMHO, this is an ankward use of the polimosphism. Additionally, it forces each method to throw a generic and hardly understandable Exception.
  • In the 0.4 version I propose, each Subclass defines its owns methods. Furthermore, I've introduced some new classes to have a one-to-one equivalence with CLIPS' datatypes.

Requirements

CLIPSJNI project has been mavenized. This means that Maven must be installed.

CLIPS' native library must be installed in the system too. The release section provides the library for Windows and Linux. If you want/need to generate the library from scratch, in the library-src directory you will find a README file which explains how to do it.

Installation

To install CLIPSJNI in your Maven local repository, simply run:

mvn install

This will also generate an OSGi compliant jar in the target subfolder that you can use wherever you want.