Roland Haeder [Thu, 27 Aug 2015 19:02:17 +0000 (21:02 +0200)]
Exclude field names starting with a dollar character + added dist.sh which helps me distributing the jcore.jar
Signed-off-by:Roland Häder <roland@mxchange.org>
Roland Haeder [Thu, 27 Aug 2015 12:14:31 +0000 (14:14 +0200)]
Some changes:
- Moved sessionId + setter/getter to super class BaseFrameworkSystem
- added method isBundledInitialized()
- the data source identifier is now hard-coded
Signed-off-by:Roland Häder <roland@mxchange.org>
Roland Haeder [Thu, 20 Aug 2015 12:16:55 +0000 (14:16 +0200)]
Added backend (unfinished) for datasources (JNDI). The usage of a Table Data Gateway Pattern allows the application to never "know" how the data is being stored or retrived from the database, it only gets its wanted objects back and stores them. Also the used pattern is simple (or simplier than) to understand. It also makes sure that the "business logic" classes is free of any SQL which makes it lesser dependent on SQL-based databases.
Signed-off-by:Roland Häder <roland@mxchange.org>
Roland Haeder [Mon, 17 Aug 2015 07:19:37 +0000 (09:19 +0200)]
Replace multiple-added strings/objects into MessageFormat.format() call to reduce string objects in string pool + ignored them for internationalization
Signed-off-by:Roland Häder <roland@mxchange.org>
Roland Haeder [Fri, 14 Aug 2015 22:02:56 +0000 (00:02 +0200)]
Continued with jcore:
- Added interface Logical for logical matches ...
- Continued with matches() method in SearchCriteria: Now only single column tests are supported, but more follow!
Signed-off-by:Roland Häder <roland@mxchange.org>
Roland Haeder [Fri, 14 Aug 2015 21:05:09 +0000 (23:05 +0200)]
Long story, short purpose. Short story, long purpose ...
Well, String is stored in database, but some getter require Long or Float which cannot be casted. So a hard-code "casting" needs to be added ...
Signed-off-by:Roland Häder <roland@mxchange.org>
Roland Haeder [Fri, 14 Aug 2015 18:28:50 +0000 (20:28 +0200)]
Continued with jcore: (refacturing)
- Added Apache commons jar
- Added missing license files
- getValueFromColumn() and setValueFromColumn() are now moved to Storeable (that they are in BaseFrameworkSystem and then needs to be overwritten again was bad OOP-ed style anyway).
- Also for this work, the type-hint for (mostly) instance must be changed to Storeable
- Added new exception CorruptedDatabaseFileException. This is thrown when the file is damaged
- Removed CorruptedDatabaseFileException() as StoreableCsv is now removed, too
-
Signed-off-by:Roland Häder <roland@mxchange.org>
Roland Haeder [Fri, 14 Aug 2015 10:00:47 +0000 (12:00 +0200)]
Continued with jcore:
- Improved handling of null values in doInsertDataSet()
- Added emptyStringToNull() to DatabaseFrontend interface
Signed-off-by:Roland Häder <roland@mxchange.org>
Roland Haeder [Fri, 14 Aug 2015 08:49:44 +0000 (10:49 +0200)]
Continued with jcore:
- Added method doInsertDataSet()
- Introduced getPreparedStatement()
- Added new constructor in DatabaseResult for status code and SQL warnings from previous executeQuery() call
Signed-off-by:Roland Häder <roland@mxchange.org>
Roland Haeder [Thu, 13 Aug 2015 12:22:51 +0000 (14:22 +0200)]
Some additions to jcore:
- renamed isValueEqual() to isFieldValueEqual() as this method does check a class field (aka. attribute)
- now search criteria can be limit and skip found matches
- added support for string criteria
Roland Haeder [Thu, 13 Aug 2015 10:07:33 +0000 (12:07 +0200)]
A lot changes on jcore:
- Implemented doSelectByCriteria() in MySQL backend
- Close only connection in same backend if it is still open
- Added method size() to Result/DatabaseResult
- Moved member entrySet() in BaseCriteria to proper location
- Fixed comments of interface Criteria and SearchableCriteria
- Some trace/debug messages added
- Now database frontends have a new method getResultFromSet() which transforms a ResultSet (SQL) to a Result (jcore)
- Sorted class/interface imports
Signed-off-by:Roland Häder <roland@mxchange.org>
Roland Haeder [Wed, 12 Aug 2015 12:34:02 +0000 (14:34 +0200)]
Added more data-gateway pattern classes + more rewrites for better usability in web-based applications:
- Added methods values() and entrySet() to Criteria instances
- Added method add() to Result instances
- Added method matchesAnd() which does a boolean check on all criteria on each Storeable instance
- Added DatabaseResult class with no implemented methods (will follow)
- Method doSelectByCriteria() in Base64 database backend is now "basicly finished"
- Added more thrown exceptions to not exit application servers on any thrown exception
Signed-off-by:Roland Häder <roland@mxchange.org>
Roland Haeder [Mon, 10 Aug 2015 13:37:05 +0000 (15:37 +0200)]
Reverted a bit back because the ConsoleClient has enterChar() which requires an array of chars + renamed + changed type of attribute
Signed-off-by:Roland Häder <roland@mxchange.org>
Roland Haeder [Mon, 10 Aug 2015 09:32:19 +0000 (11:32 +0200)]
Fixes for factory class, you need to take DatabaseFrontend.class as parameter type (sure) because it is used there
Signed-off-by:Roland Häder <roland@mxchange.org>
Roland Haeder [Mon, 10 Aug 2015 09:22:19 +0000 (11:22 +0200)]
Introduced BackendFactory which does now instance the database backend class. You only need to implement DatabaseBackend and have the class' name set in property org.mxchange.jcore.database.backend.class
Signed-off-by:Roland Häder <roland@mxchange.org>