Uploaded image for project: 'Couchbase Java Client'
  1. Couchbase Java Client
  2. JCBC-1069

Adding union, intersect & except to DSL

    XMLWordPrintable

Details

    • Improvement
    • Status: Resolved
    • Minor
    • Resolution: Fixed
    • None
    • 2.5.0
    • None

    Description

      Motivation
      ----------
      DSL has union & unionAll methods in SelectResultPath interface. Even if they existed,
      it's not possible to join multiple queries by using existing method signatures. In my
      case, I'm joining dynamically generated queries assigned to variables. I think it's
      best to allow DSL to chain queries like below:

      result = query1.intersect(query2).except(query3)

      Modifications
      -------------
      Added 2 new elements: ExceptElement & IntersectElement.
      Changed UnionElement to allow a query to be added.
      Added new methods to SelectResultPath for missing intersect & except methods which uses
      the old method signature same as union & unionAll. Also added new chainable methods
      which takes & returns SelectResultPath objects.

      Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          tunix Alper Kanat created issue -
          daschl Michael Nitschinger made changes -
          Field Original Value New Value
          Status New [ 10003 ] Open [ 1 ]
          daschl Michael Nitschinger made changes -
          Fix Version/s 2.5.0 [ 14200 ]
          daschl Michael Nitschinger made changes -
          Resolution Fixed [ 1 ]
          Status Open [ 1 ] Resolved [ 5 ]

          People

            daschl Michael Nitschinger
            tunix Alper Kanat
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes

                PagerDuty