Coherence Groovy Query Language Console

Hi,
we have developed enhanced Coherence query console within our data rating project for telco operator. The idea may come handy for other Coherence users, if you are interested details and source can be found on [github - project CGQL|https://github.com/artincz/cgql] .
Regards
Jan Najvarek, ARTIN

Hi
Using EqualsFilter will implicitly look for the method 'getName' on the value part of the entry. If you want the Filter to look for it on the key part you need to do the following:
Filter filter = new EqualsFilter(new KeyExtractor("getName") , "BobSmith");/Charlie

Similar Messages

  • Coherence query language - QueryBuilder API

    Hi ,
    does anyone know , in which package the ' QueryBuilder' class resides ?

    charlie ,
    am not sure that , whether there is a QueryBuilder API or not . I am looking for a API , which can convert the
    sql query " select homeAddress.state, age, count() from "ContactInfoCache" group by homeAddress.state, age " into coherence specific query language .
    In short , I just want to extract a particular attribute from the value object , not the whole value object.
    Edited by: Mariselvam on Feb 17, 2011 8:26 PM

  • Applying a query language to collections

    Hi, we handed in a project a while ago that was essentially to read in data from a .DAT file, store it in appropriate collections, then use a basic query language to filter through the stored data. I wasn't really happy with my querying though, as it was basically a huge succession of control statements. The queries were of the form "select OBJECTNAME where ATRIBUTE OPERATOR VALUE and ATRIBUTE OPERATOR VALUE", there could be as many sub clauses as desired (0... 200 whatever). For example "select elephant where height > 360 and weight <= 1000".
    We had a comment back that we should use a Query interface and a two subclasses to represent a simple query (e.g. height > 360) and then a conjunctive query (ie simplequery1 AND simplequery2 ). The Query interface would then have a match method. I'm struggling to get my head around how I do this, does anyone have a simple example or explaination that might help me out?
    Cheers.

    I've done something like this a couple times. Your need to get a better idea of what you want your query language to look like. For example, if you're given a list of elephants, the "select elephant" part is unnecessary (your query will just return a list of matching elephants). You should decide if you want it to handle things like (height > (weight / 2)), whether conditions can be nested "((a and b) or (c and d)) and (e or f)". Will you need to support the conditional operator (a ? b : c) or a unary operator (-)? How complex will your order of operations rules be?
    If you keep it simple (always two operands), you could go with something like this:
    public interface QueryOperator
      public boolean eval(Object leftParam, Object rightParam);
    public enum BasicOperators implements QueryOperator
    public class  QueryElement
      private QueryOperator operator;
      private Object leftParam;
      private Object rightParam;
    }

  • Coherence+JPA query issues

    Hello everyone,
    I've setup Coherence 3.6 to use JPA according to the generic instructions found here [http://coherence.oracle.com/display/COH35UG/Configuring+Coherence+for+JPA]
    This works fine and I can actually get data out of the DB backed cache. What I've found however is that CohSQL queries do not return anything unless the entry is already in Coherence. I'm using this piece of code to test query Coherence
    public <T> List<T> getAll(Class<T> type) {
            final List<T> data = new ArrayList<T>();
            Filter filter = QueryHelper.createFilter("value().class=?1", new Object[] { type });
            Set<Map.Entry<?, T>> filteredSet = cache.entrySet(filter);
            for (Map.Entry<?, T> t : filteredSet) {
                data.add(t.getValue());
            return Collections.unmodifiableList(data);
      }Should I be expecting Coherence to query the DB at this point, or is CohSQL confined to whatever's already in the cache?
    Thanks
    Edited by: 876420 on 01-Aug-2011 07:07

    Section 20 of the dev guide:
    "It should be noted that queries apply only to currently cached data (and will not use the CacheLoader interface to retrieve additional data that may satisfy the query). Thus, the data set should be loaded entirely into cache before queries are performed. In cases where the data set is too large to fit into available memory, it may be possible to restrict the cache contents along a specific dimension (for example, "date") and manually switch between cache queries and database queries based on the structure of the query. For maintainability, this is usually best implemented inside a cache-aware data access object (DAO)."
    Cheers,
    Steve

  • XPath Query Language Reference

    Aside from the three little examples given in the 11g Guide and the B2B Tech Note #011, is there a reference available for the XPath Query Language used by B2B? Is is possible to use complex XPath queries in the B2B Doc Definitions?

    I'm mainly just looking for the full capabilities of the queries.
    Specifically, at the moment, I'm looking for a way to match the value of a node to a group of values (like a sql 'in') as well as check the existence and value of other nodes within the same query.
    Do the documents I find for 'Preference XPath' pertain here?

  • EJB Query Language

    Hi All,
         I am using SAP Netweaver Developer Studio(2004)version.I want to know that EJB2.0 Query Language will
    support Joins,Internal select statement with in a select
    statement or not.Is it posssible or not.I have a requirement lilke this,I have to use joins.
    Thanks & Regards,
    Guru

    Guruvulu,
    In EJB QL you may operate on objects relations (both 0..1 and 0..n) in the same way as with joins in SQL. So the answer is yes.
    Read free <a href="http://www.theserverside.com/books/wiley/masteringEJB/downloads/MasteringEJB3rdEd.pdf">Mastering EJB</a> book -- it contains separate chapter on EJB QL.
    Valery Silaev
    EPAM Systems
    http://www.NetWeaverTeam.com

  • EJB Query Language where condtion based on date

    Hi,
    I am using EJB3 query language. In the table I have a column called requestdate which is in date time format. I have created an entity class.
    I need to select few records using query language(named queries) based on this requestdate matching to the current date. I want to compare only based on Date value (truncating the time). Something like this
    select max(o.req_id) from requests o where o.requestdate = :currentdate
    currentdate is java.sql.Date value formatted to yyyymmdd only.
    How can I do this using query language?
    Please help to me get this done.
    thanka
    Anuradha

    Hi Anuradha ,
    I'm afraid the query language does not support retrieving the date portion (i.e. truncating the time) from a date field.
    I propose you turn you named into a BETWEEN query taking two parameters one for the beginning of the day and another for the end of the day. Then your named query could look like:
    SELECT max(o.req_id) FROM requests o WHERE o.requestdate BETWEEN :start AND :end
    The following code creates two calendar instances for the current day, one for 00:00:00 and another for 23:59:59:
    Calendar start = Calendar.getInstance();
    start.set(Calendar.HOUR_OF_DAY, 0);
    start.set(Calendar.MINUTE, 0);
    start.set(Calendar.SECOND, 0);
    start.set(Calendar.MILLISECOND, 0);
    Calendar end = Calendar.getInstance();
    end.set(Calendar.HOUR_OF_DAY, 23);
    end.set(Calendar.MINUTE, 59);
    end.set(Calendar.SECOND, 59);
    end.set(Calendar.MILLISECOND, 999);
    Here is some sample code that creates a query instance for a named query called findMaxRequestPerDay and passes the Date of the above Calendar instance as actual parameter values. It assumes the named query is called findMaxRequestPerDay and the req_id field is a long:
    Query query = em.createNamedQuery("findMaxRequestPerDay");
    query.setParameter("start", start.getTime());
    query.setParameter("end", end.getTime());
    Long max = (Long)query.getSingleResult();
    I hope this helps.
    Regards Michael

  • EJB query language help!!

    Hi all, I have been trying to run a ejb query on JBoss 4.0.5, using built in hypersonic db, For some strange reasons am able to fetch all objects from db without any where clause but if am using a where clause with an attribute name from the entitybean am unable to retrieve any results.
    I get an org.hibernate.QueryException, could not resolve property : "property name"
    My ejb query looks like this...
    SELECT template FROM TemplateSelect template WHERE template.template_name='Template_One'
    TemplateSelect is my entity bean class and I do have an attribute named template_name in my bean class.
    could any one please suggest me what could be wrong and also direct me to a good tutorial on ejb query language as well as I am fairly new to hibernate and ejb3 !
    tons of thanks in advance!
    pravin

    Hi Anuradha ,
    I'm afraid the query language does not support retrieving the date portion (i.e. truncating the time) from a date field.
    I propose you turn you named into a BETWEEN query taking two parameters one for the beginning of the day and another for the end of the day. Then your named query could look like:
    SELECT max(o.req_id) FROM requests o WHERE o.requestdate BETWEEN :start AND :end
    The following code creates two calendar instances for the current day, one for 00:00:00 and another for 23:59:59:
    Calendar start = Calendar.getInstance();
    start.set(Calendar.HOUR_OF_DAY, 0);
    start.set(Calendar.MINUTE, 0);
    start.set(Calendar.SECOND, 0);
    start.set(Calendar.MILLISECOND, 0);
    Calendar end = Calendar.getInstance();
    end.set(Calendar.HOUR_OF_DAY, 23);
    end.set(Calendar.MINUTE, 59);
    end.set(Calendar.SECOND, 59);
    end.set(Calendar.MILLISECOND, 999);
    Here is some sample code that creates a query instance for a named query called findMaxRequestPerDay and passes the Date of the above Calendar instance as actual parameter values. It assumes the named query is called findMaxRequestPerDay and the req_id field is a long:
    Query query = em.createNamedQuery("findMaxRequestPerDay");
    query.setParameter("start", start.getTime());
    query.setParameter("end", end.getTime());
    Long max = (Long)query.getSingleResult();
    I hope this helps.
    Regards Michael

  • Query language for CTXRULE MATCHES

    I am trying to build an alerting application when, on receipt of a new XML document, user's are alerted if the document matches one or more of the profiles that they have defined. I have created a CTXRULE index that does this but only with very simple profiles. For example ABOUT(soccer), which is the example in the Text documentation.
    Is it possible to create more complex queries, for example using WITHIN to only match within defined elements of the XML document. Is there a definition of the query language that can be used with MATCHES and are there any good example?
    Thanks
    Martin Haigh

    Omar,
    Thanks for the reply. I had actually found that document myself but I couldn't get the WITHIN clause to work and that document conflicted with the ORACLE documentation at:
    <a href="http://download-west.oracle.com/docs/cd/B10501_01/text.920/a96517/ind.htm#1010647>  Do you have any examples of using WITHIN?
    Thanks
    Martin                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   

  • Query language for XML documents

    Which is a better (efficiency in terms of memory management) query language for interacting with XML documents.The query language shouls support 'insert', 'delete', 'update' and 'select' commands. How fast is database as compared to XML ( database being replaced by XML) when only 'insert' n 'select' commands are issued?

    Hi,
    I suggest you use the Sunopsis JDBC for XML driver that will let you perform all kind of SQL statements on your XML files. It is a type 4 driver so it's very use to use. You may have more information and download it here:
    http://www.sunopsis.com/corporate/us/products/jdbcforxml/
    Hope that will help
    Simo Fernandez

  • Query language for XML that is going to remove use of database

    Friends,
    I want to know whether my idea is feasible or not.
    I want to make a query language similar to SQL for XML which is going to remove the need for database for a large extent.
    Their will be queries for making table,extracting data,making foreign key all through XML and no database.
    I just want to know that is their any market value for such a project and will it be sellable,so that i can start working on it.

    There is no way to judge any future market for such a thing.
    As it is, XML is widely abused, having mutated from its original purpose, a markup language readable by both machine and human, to a general data interchange language. It winds up being extremely slow and convoluted, in some cases overwhelming the hardware when a simple and common error occurs, then having to catch up. A big part of this is the silly and redundant method of defining metadata, again and again and again and again.
    So what you want to do is create a database which will be highly formatted with redundant information, dynamically. This is silly, why does data need to be stored in a human readable format? It doesn't always even need to be presented in a human readable format! Why the heck would you need to read the bits of an mp4? Steganography?
    What you are proposing is the exact opposite of what is needed. What is needed is a way to describe metadata for many different kinds of data, in a manner that can be interpreted by both man and machine at appropriate times, extensible for various paradigms.
    What can be sold, on the other hand, is another question entirely, and not technical at all.
    First definition of database that pops up during a search: an organized body of related information
    Why would you want to get rid of that?

  • JPA query language syntax

    My question is if JPA query language syntax allows full qualified class names in the SELECT clause of the query, e.g.:
    SELECT * FROM com.abc.Person
    This works well with Hibernate, but TopLink Essentials complains about the dots in com.abc.Person.
    In the Java EE 5 Tutorial only partially qualified names ( SELECT * FROM Person) are used.
    There are only examples with fully qualified names for constants in WHERE clauses.

    my first guess:
    SELECT t FROM tablename t WHERE t.timestamp>:somethingwhere :something
    is handled with something like: (..).setParameter("something", someSQLDate);

  • Object Query Language (OQL) Support ?

    I know Toplink has an "ExpressionBuilder" type querying
    But does Toplink support Object Query Language (OQL)
    Example :
    Something like this ?
    // perform query
    OQLQuery query = new OQLQuery(
    "select x from Person x where x.name = \"Doug Barry\"");
    Collection result = (Collection) query.execute();
    Iterator iter = result.iterator();
    Thanks
    Ratheesh

    Ratheesh,
    TopLink does not support OQL. We offer query support through the following 5 options:
    1. EJB QL - for both Entity Beans (CMP/BMP) and Java objects
    2. TopLink Expressions - Object based query API
    3. SQL calls
    4. Stored procedure calls
    5. Quey by example
    Doug

  • SAP Query Language max retrieve size 512 bytes?

    Hello,
    Does anyone know if there is a 512 byte limit on retrieves from a table when using SAP Query Language?  In other words the length of all the fields in the retrieve can't exceed 512 bytes?
    Thanks

    Hi,
    And also you need check this thread
    May this will help you out.

  • Limit query for Java Persistence Query Language

    Hi,
    Anybody know Java Persistence Query Language can support limit querry to limit the number of row return(Like SQL LIMIT clause)?
    Thanks

    I think the javax.persistence.Query methods setFirstResult and setMaxResults are what you need...

Maybe you are looking for

  • How to stop this forum from sending me email?

    I've only posted on 1 thread once... and now, I can't stop the flow of emails from the thread that I commented! I've already selected "No" on all the items in my preference but I still get an email from the same topic/thread I've commented. Talk abou

  • Daisy chaining two Lacie Firewire 800 drives on a G%

    I've had one external drive working perfectly for months. Tried to daisy chain a second drive and can't get the second drive to register on my desktop. Support said to reboot. My system freezes upon shutting down. If I restart with the two connected,

  • Safari 2.0.3 : certain web sites don't recognize correct login/password

    Just upgraded to 10.4.4 and with this to safari 2.0.3. From this day on I can't gain access to some web sites that require a log/pass because it says it is incorrect. ( Note the password I type is the correct one and works with explorer...). One of t

  • HT4623 How to turn-off tap display during passcode entry

    I recently bought Iphone 4s. I like the phone as such but one thing that I want to change is tap display while entering the passcode on lock screen. I don't want to see which keys I am entering as this can put my phone on risk as anyone close to me c

  • Need help to transfer 5.1 audio via hdmi

    Hi, guys! This is my first post, I would like to apologize for my bad english. Today I received my new Mini DP to HDMI adapter and, after a little configuration, I was able to make it work properly with my mac. But, after all my work, I noticed that