<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Recent changes to Home</title><link>https://sourceforge.net/p/jsqllib/wiki/Home/</link><description>Recent changes to Home</description><atom:link href="https://sourceforge.net/p/jsqllib/wiki/Home/feed" rel="self"/><language>en</language><lastBuildDate>Tue, 11 Jun 2013 17:45:26 -0000</lastBuildDate><atom:link href="https://sourceforge.net/p/jsqllib/wiki/Home/feed" rel="self" type="application/rss+xml"/><item><title>Home modified by Vijay</title><link>https://sourceforge.net/p/jsqllib/wiki/Home/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v3
+++ v4
@@ -1,7 +1,4 @@
-[[download_button]]
-
-
-jSQL Library
+jSQL Library                                                                    [[download_button]]
 ============

 jSQL is a java library provide developers to filter the java collections with syntax similar to SQL. It enhances you application performance by ignoring the database connection if you already having a database records in the java collection.
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Vijay</dc:creator><pubDate>Tue, 11 Jun 2013 17:45:26 -0000</pubDate><guid>https://sourceforge.netba596ead82ef110083119c65aa3d776d40e8237e</guid></item><item><title>Home modified by Vijay</title><link>https://sourceforge.net/p/jsqllib/wiki/Home/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v2
+++ v3
@@ -1,4 +1,5 @@
 [[download_button]]
+

 jSQL Library
 ============
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Vijay</dc:creator><pubDate>Tue, 11 Jun 2013 17:44:28 -0000</pubDate><guid>https://sourceforge.net40670be768c1b742e0a5d91776e55249c93d0f29</guid></item><item><title>Home modified by Vijay</title><link>https://sourceforge.net/p/jsqllib/wiki/Home/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v1
+++ v2
@@ -1,8 +1,56 @@
-Welcome to your wiki!
+[[download_button]]

-This is the default page, edit it as you see fit. To add a new page simply reference it within brackets, e.g.: [SamplePage].
+jSQL Library
+============

-The wiki uses [Markdown](/p/jsqllib/wiki/markdown_syntax/) syntax.
+jSQL is a java library provide developers to filter the java collections with syntax similar to SQL. It enhances you application performance by ignoring the database connection if you already having a database records in the java collection.

-[[members limit=20]]
-[[download_button]]
+Features
+========
+
+* Provides generic logic to filter the java collection.
+* Currently =,&lt;,&lt;=,&gt;,&gt;=  operators are supported.
+* like operator and order by clause will be supported for ordered collection based on     any property without implement comparator interface.
+* No configuration required
+
+Get Started
+===========
+
+1. Download the library from [here](https://sourceforge.net/projects/jsqllib/files/latest/download).
+2. Add Library into you project.
+3. jSql requires antlrv3 library, that is included in default download package
+3. Use the following code to create an instance of *CollectionFilter* class.
+
+    ~~~~~~~~~~~~~~~~~~
+    CollectionFilter objFilter = new CollectionFilter(list, "name=\"aa106\"");
+    list = (List) objFilter.getFilteredCollection();
+    
+    
+    //list: first parameter passed to *CollectionFilter* class constructor is collection to be filtered.
+    //query: "name=\"aa106\"" is second parameter which is the filter that is going to be applied on collection.
+    ~~~~~~~~~~~~~~~~~~~
+
+4. *getFilteredCollection()* is function in CollectionFilter class which returns the filtered collection. 
+
+Filter SQL Syntax
+=================
+
+* Filter follows similar to sql syntax without select,order by and supports *where* clause without where. So syntax goes like this :
+    
+    ~~~~~~~~~~~~~
+    (propertyName operator operand) logical operator (propertyName operator operand)
+    
+    age&gt;=20 and age&lt;=35 and deptName="Finance"
+
+    //This will return the collection contain object which are from Finance department and age is between 20 and 35.
+    ~~~~~~~~~~~~~
+
+* Use " " double code to represent string comparison, so you have to use escape sequence( **"name=\"Ajay\""**) while passing to *CollectionFilter* class.
+
+
+Future Enhancements
+===================
+
+* More operators like,IN,between will be supported.
+* Order By Clause will be supported to Collection can be sorted without implement comparator interface
+
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Vijay</dc:creator><pubDate>Tue, 11 Jun 2013 17:43:29 -0000</pubDate><guid>https://sourceforge.net153c0b096350e98e379e716c5913ca04c616dcec</guid></item><item><title>Discussion for Home page</title><link>https://sourceforge.net/p/jsqllib/wiki/Home/</link><description>&lt;div class="markdown_content"&gt;&lt;h1 id="jsql-library"&gt;jSQL Library&lt;/h1&gt;
&lt;p&gt;jSQL is a java library provide developers to filter the java collections with syntax similar to SQL. It enhances you application performance by ignoring the database connection if you already having a database records in the java collection.&lt;/p&gt;
&lt;h1 id="features"&gt;Features&lt;/h1&gt;
&lt;ul&gt;
&lt;li&gt;Provides generic logic to filter the java collection.&lt;/li&gt;
&lt;li&gt;Currently =,&amp;lt;,&amp;lt;=,&amp;gt;,&amp;gt;=  operators are supported.&lt;/li&gt;
&lt;li&gt;like operator and order by clause will be supported for ordered collection based on     any property without implement comparator interface.&lt;/li&gt;
&lt;li&gt;No configuration required&lt;/li&gt;
&lt;/ul&gt;
&lt;h1 id="get-started"&gt;Get Started&lt;/h1&gt;
&lt;ol&gt;
&lt;li&gt;Download the library from here.&lt;/li&gt;
&lt;li&gt;Add Library into you project.&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Use the following code to create an instance of &lt;em&gt;CollectionFilter&lt;/em&gt; class.&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span class="n"&gt;CollectionFilter&lt;/span&gt;&lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="n"&gt;emp&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt; &lt;span class="n"&gt;objFilter&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="n"&gt;new&lt;/span&gt; &lt;span class="n"&gt;CollectionFilter&lt;/span&gt;&lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="n"&gt;emp&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;list&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &amp;quot;&lt;span class="n"&gt;name&lt;/span&gt;&lt;span class="p"&gt;=&lt;/span&gt;&lt;span class="o"&gt;\&lt;/span&gt;&amp;quot;&lt;span class="n"&gt;aa106&lt;/span&gt;&lt;span class="o"&gt;\&lt;/span&gt;&amp;quot;&amp;quot;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="n"&gt;list&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;List&lt;/span&gt;&lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="n"&gt;emp&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="n"&gt;objFilter&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;getFilteredCollection&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;

&lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="n"&gt;list&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;first&lt;/span&gt; &lt;span class="n"&gt;parameter&lt;/span&gt; &lt;span class="n"&gt;passed&lt;/span&gt; &lt;span class="n"&gt;to&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt;&lt;span class="n"&gt;CollectionFilter&lt;/span&gt;&lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="n"&gt;class&lt;/span&gt; &lt;span class="n"&gt;constructor&lt;/span&gt; &lt;span class="n"&gt;is&lt;/span&gt; &lt;span class="n"&gt;collection&lt;/span&gt; &lt;span class="n"&gt;to&lt;/span&gt; &lt;span class="n"&gt;be&lt;/span&gt; &lt;span class="n"&gt;filtered&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;
&lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="n"&gt;query&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &amp;quot;&lt;span class="n"&gt;name&lt;/span&gt;&lt;span class="p"&gt;=&lt;/span&gt;&lt;span class="o"&gt;\&lt;/span&gt;&amp;quot;&lt;span class="n"&gt;aa106&lt;/span&gt;&lt;span class="o"&gt;\&lt;/span&gt;&amp;quot;&amp;quot; &lt;span class="n"&gt;is&lt;/span&gt; &lt;span class="n"&gt;second&lt;/span&gt; &lt;span class="n"&gt;parameter&lt;/span&gt; &lt;span class="n"&gt;which&lt;/span&gt; &lt;span class="n"&gt;is&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;filter&lt;/span&gt; &lt;span class="n"&gt;that&lt;/span&gt; &lt;span class="n"&gt;is&lt;/span&gt; &lt;span class="n"&gt;going&lt;/span&gt; &lt;span class="n"&gt;to&lt;/span&gt; &lt;span class="n"&gt;be&lt;/span&gt; &lt;span class="n"&gt;applied&lt;/span&gt; &lt;span class="n"&gt;on&lt;/span&gt; &lt;span class="n"&gt;collection&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;em&gt;getFilteredCollection()&lt;/em&gt; is function in CollectionFilter class which returns the filtered collection. &lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h1 id="filter-sql-syntax"&gt;Filter SQL Syntax&lt;/h1&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Filter follows similar to sql syntax without select,order by and supports &lt;em&gt;where&lt;/em&gt; clause without where. So syntax goes like this :&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;propertyName&lt;/span&gt; &lt;span class="n"&gt;operator&lt;/span&gt; &lt;span class="n"&gt;operand&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="n"&gt;logical&lt;/span&gt; &lt;span class="n"&gt;operator&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;propertyName&lt;/span&gt; &lt;span class="n"&gt;operator&lt;/span&gt; &lt;span class="n"&gt;operand&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;

&lt;span class="n"&gt;age&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt;&lt;span class="p"&gt;=&lt;/span&gt;20 &lt;span class="n"&gt;and&lt;/span&gt; &lt;span class="n"&gt;age&lt;/span&gt;&lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="p"&gt;=&lt;/span&gt;35 &lt;span class="n"&gt;and&lt;/span&gt; &lt;span class="n"&gt;deptName&lt;/span&gt;&lt;span class="p"&gt;=&lt;/span&gt;&amp;quot;&lt;span class="n"&gt;Finance&lt;/span&gt;&amp;quot;

&lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="n"&gt;This&lt;/span&gt; &lt;span class="n"&gt;will&lt;/span&gt; &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;collection&lt;/span&gt; &lt;span class="n"&gt;contain&lt;/span&gt; &lt;span class="n"&gt;object&lt;/span&gt; &lt;span class="n"&gt;which&lt;/span&gt; &lt;span class="n"&gt;are&lt;/span&gt; &lt;span class="n"&gt;from&lt;/span&gt; &lt;span class="n"&gt;Finance&lt;/span&gt; &lt;span class="n"&gt;department&lt;/span&gt; &lt;span class="n"&gt;and&lt;/span&gt; &lt;span class="n"&gt;age&lt;/span&gt; &lt;span class="n"&gt;is&lt;/span&gt; &lt;span class="n"&gt;between&lt;/span&gt; 20 &lt;span class="n"&gt;and&lt;/span&gt; 35&lt;span class="p"&gt;.&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Use " " double code to represent string comparison, so you have to use escape sequence( &lt;strong&gt;"name=\"Ajay\""&lt;/strong&gt;) while passing to &lt;em&gt;CollectionFilter&lt;/em&gt; class.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h1 id="future-enhancements"&gt;Future Enhancements&lt;/h1&gt;
&lt;ul&gt;
&lt;li&gt;More operators like,IN,between will be supported.&lt;/li&gt;
&lt;li&gt;Order By Clause will be supported to Collection can be sorted without implement comparator interface&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Vijay</dc:creator><pubDate>Mon, 10 Jun 2013 19:04:05 -0000</pubDate><guid>https://sourceforge.net16baf1e396427c74751d1426e4adfa7874d4fdf3</guid></item><item><title>Home modified by Vijay</title><link>https://sourceforge.net/p/jsqllib/wiki/Home/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;Welcome to your wiki!&lt;/p&gt;
&lt;p&gt;This is the default page, edit it as you see fit. To add a new page simply reference it within brackets, e.g.: &lt;span&gt;[SamplePage]&lt;/span&gt;.&lt;/p&gt;
&lt;p&gt;The wiki uses &lt;a class="" href="/p/jsqllib/wiki/markdown_syntax/"&gt;Markdown&lt;/a&gt; syntax.&lt;/p&gt;
&lt;p&gt;&lt;h6&gt;Project Members:&lt;/h6&gt;
&lt;ul class="md-users-list"&gt;
&lt;li&gt;&lt;a href="/u/vijay522/"&gt;Vijay&lt;/a&gt; (admin)&lt;/li&gt;
&lt;/ul&gt;&lt;br /&gt;
&lt;/p&gt;&lt;p&gt;&lt;span class="download-button-51aed3d681b24b6f5ec91228" style="margin-bottom: 1em; display: block;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Vijay</dc:creator><pubDate>Wed, 05 Jun 2013 05:59:52 -0000</pubDate><guid>https://sourceforge.net071ea0f55819d5e1e61f910615724f87d7ff5ca7</guid></item></channel></rss>