Understanding Casting with Generics

With multiple level inheritance and polymorphism it can become a bit challenging to see how a method accepting and returning a generic would behave if within the method some transformation takes place and either a sub or super type of that generic is returned. Let's take an example Interface: public interface ClassInterface { String sayHello(); … Continue reading Understanding Casting with Generics

JSP hot-deploy in Wildfly

To enable hot-deploy of JSPs in Wildfly, i.e. to automatically publish any changes to JSPs in ${WILDFLY_ROOT}/standalone/tmp/vfs/temp/tempxxxxxxx/content-xxxxxxx without requiring redeployment of war, set the development attribute of jsp-config within undertow subsystem to true as below: <subsystem xmlns="urn:jboss:domain:undertow:3.0"> <servlet-container name="default" default-encoding="UTF-8">         <jsp-config development="true" tag-pooling="false"/>         <websockets/> </servlet-container>  

Object Flows: Workflow-item scheduling, routing, assignment and execution

Assigner assigns a mechanism (user or bot) to work on a workflow-item available at a workflow-station. Performer/Executor completes the bot tasks. Scheduler creates a schedule for completed workflow-item. The schedule consists of which workflow-station the workflow-item should go to next and at what time. Router creates workflow-item processing tasks at workflow-stations per the schedules.  

Object Flows: Loading and processing of workflow items

Any resource with a status of not-available:{stateID} is picked up by the workflow engine loader and added into the workflow as a workflow-item. The loader is composed of two parts - producer and consumer. The loader-producer updates the status of resource to loading-in-process:{stateID} and puts the resource identifier in kafka. Loader-consumers are running on all … Continue reading Object Flows: Loading and processing of workflow items

Migrating SQL applications to Cassandra – Pattern #4

Pattern #4: Get rid of all OR operators from sql where clauses. For example, consider an SQL requirement to authenticate user by comparing the string entered by the user with either username or email or phone: select u1.* from user u1 where (u1.username = ?1 or u1.email = ?1 or u1.phone = ?1) and u1.password = … Continue reading Migrating SQL applications to Cassandra – Pattern #4