Commit Graph

429 Commits

Author SHA1 Message Date
Steve Powell 13c1c9795a v1.1.0
[v1.1.x]
2013-11-01 23:55:46 +00:00
Steve Powell 5e59108633 Create 1.1.0 release
[v1.1.x]
2013-11-01 17:00:35 +00:00
Steve Powell e607f2a0df RabbitMQ 3.2.0 2013-10-29 15:35:16 +00:00
Steve Powell be2e6d509c Correct boolean expression parsing to allow for multiple NOT
The grammar clause not_expr did not allow for NOT NOT expression. The parser will
automatically condense this to expression, but the grammar will not recognise it.
This commit corrects this and adds a test to check we parse it correctly.
2013-08-14 17:48:45 +01:00
Steve Powell 0cc2f03e4e Extend floating point syntax some more to allow numbers like "21." 2013-08-14 00:48:23 +01:00
Steve Powell 18e01f36d4 Extend floating point syntax to allow decimal digits before f|F|d|D terminator 2013-08-14 00:22:13 +01:00
Steve Powell 6d3570dacc Fix SQL grammar error that doesn't parse '--<expression>' correctly
Grammar clause for sign_expr doesn't allow arbitrarily many sign prefixes.
In particular, when floats were changed to be unsigned, --1.0 became
{'-', {'-', 1.0}} instead of {'-', -1.0}, and broke on this clause error.
This commit fixes this problem and adds some lexical and parser tests to
keep track of it.
2013-08-13 15:41:42 +01:00
Steve Powell 716e23f59a Remove unnecessary optional signs on floating point number lexical scanning. 2013-08-13 12:56:52 +01:00
Steve Powell 1a4d1ab071 Slightly simplify the lexical scanner.
Remove cryptic definitions and atomize clauses.
2013-08-13 11:21:48 +01:00
Steve Powell 697e777854 Add scanner unit tests.
The lexical scanner for SQL expressions was not directly tested in unit test phase.
This commit fixes this by supplying a unit test (which can be expanded) to check that
the lexical scanner can deliver the correct tokens.

[v1.0.x]
2013-08-12 17:21:37 +01:00
Steve Powell e3ed34b239 Simplify parser grammar, and remove comparison atom names.
The parser is inherently ambiguous, if you separate boolean, string and arithmetic expressions.
We merge the three types and create operations that work on any of them. This is a superset of
the valid expressions and validation is then made as far as possible by a separate type scan of
the parse tree.  Full validation is not possible until run-time when the types of the identifiers
is known.

This commit also removes the atoms 'eq', 'neq', 'lteq', &c. and replaces them with direct atoms of
the operator, viz. '=', '<>', '<=', &c.

[v1.0.x]
2013-08-12 17:21:27 +01:00
Steve Powell b19dd72cd2 Adjust s3 repository addresses. 2013-08-01 17:21:23 +01:00
Steve Powell 21f5f0fca9 Remove redundant accumulation field in scan. 2013-07-19 15:08:59 +01:00
Steve Powell 06eb1d2ca9 Refactor dictionary scan to make it more readable.
Fix warnings.
2013-07-19 14:47:29 +01:00
Steve Powell 76b0dd36a3 Add test for multiple queues on jms-queue policy selector exchanges.
Refactor test functions.

[#53393231-multiple-queues]
2013-07-18 17:18:10 +01:00
Steve Powell 4e1fb8268d Implement topic and queue selection policy types on the selection exchange.
Modify exchange record in selector exchange Mnesia db;
  db record now includes a flag indicating selection policy set upon exchange creation;
  queue-selection routing rules, or topic-selection routing rules;
  Default is topic-selection rules -- current behaviour;
  refactor matching to make things simpler and not to apply functions unless needed.

Refactor topic selection (in-broker) tests, and add queue selection test.

Fix unit test dummy_binding to pass the add_binding trivial test.

[#53393051-extend-plugin]
2013-07-18 15:58:34 +01:00
Steve Powell 8e126a7db5 Add some trivial unit tests
[#53393051-extend-plugin]
2013-07-16 11:36:38 +01:00
Steve Powell dbf92d1b1c Add some trivial unit tests
[#53393051-extend-plugin]
2013-07-16 11:00:27 +01:00
Steve Powell 63be245744 Remove reference to RabbitMQ version in build.
Add selector integration test (in-broker).
Augment exchange plugin callbacks for RabbitMQ [3.1.1, oo).
2013-07-03 17:39:09 +01:00
Steve Powell 01c78dc1bb Update all copyright statements to GoPivotal, Inc.
[v1.0.x]
2013-06-27 16:36:09 +01:00
Steve Powell a8717bba2e Set approved version 1.1 open_source_licenses.txt file.
[#50369741-open-source-licenses]
2013-06-19 15:54:18 +01:00
Steve Powell 31f0b07865 Allow periods in identifier names and add test to check for this.
[#51640045]
2013-06-13 15:14:38 +01:00
Steve Powell cbd5720302 Set release 1.1.0-SNAPSHOT 2013-05-21 16:37:12 +01:00
Steve Powell 66b4785fe0 Minor grammar updates to README 2013-05-20 14:04:06 +01:00
Steve Powell 039c31827d RJMS-111: Remove special format for TypeInfo; adjust tests; add more type tests. 2013-04-19 14:53:55 +01:00
Steve Powell dea9e0d1f4 RJMS-111: Removal of type info field from database and wholesale updates of file comments.
- type info directly derived from arguments
- copyright statements and license information was o-o-d
- file comments and type information improved
2013-04-19 14:52:33 +01:00
Steve Powell 3165c7a055 RJMS-105: Pass TypeInfo on XChange create; store in db state; use in add_binding validation. 2013-04-18 13:41:45 +01:00
Steve Powell a2f9b37483 RJMS-105: Expose TypeInfo on analyze interface -- update tests. 2013-04-18 13:41:41 +01:00
Steve Powell e8f1d7e984 RJMS-105: Continue refactoring of type information -- injected only at top. 2013-04-18 13:41:34 +01:00
Steve Powell 2e91f0324f RJMS-105: Rework identifier checks to isolate them ready for parametrisation. 2013-04-18 13:41:26 +01:00
Steve Powell d0a0870b2d RJMS-105: Add test for enumerated type JMSDeliveryMode. 2013-04-18 13:41:16 +01:00
Steve Powell b1e5df6d6a RJMS-103: Change keys in binding funs dictionary to include destination name.
Also change 'queue' references to 'destination' references.
2013-04-11 15:38:27 +01:00
Steve Powell 7a3fe66221 v1.0.x: Change orddict to dict 2013-04-11 15:03:50 +01:00
Steve Powell 294404bdcb RJMS-102: Added parent ref; removed redundant properties and parent-declared stuff.
Added repositories for stand-alone builds.
2013-03-28 12:18:52 +00:00
Steve Powell 0e1f536d1e RJMS-100: Re-instate tests (from six repo, which is now redundant). 2013-03-27 15:00:02 +00:00
Steve Powell 22ce396361 RJMS-100: Move sjx code to plugin repo; and adjust build steps. 2013-03-27 14:42:09 +00:00
Steve Powell 99a381f1ce Set 1.1 development train (1.1-SNAPSHOT) 2013-03-20 16:53:58 +00:00
Steve Powell 33d6b7141f Upgrade to rabbitmq-3.0.4 2013-03-19 09:42:51 +00:00
Steve Powell 0ba59ff4fb Remove unused error condition. 2013-03-15 17:00:18 +00:00
Steve Powell 53a4937331 Add db-transaction semantics for exchange callbacks. 2013-03-14 16:28:48 +00:00
Steve Powell ea9cbe107b Update default RMQ version. 2013-03-13 11:32:06 +00:00
Steve Powell 4915ca86db Correct error messages. 2013-03-13 10:42:49 +00:00
Steve Powell 4fc01c23ff Improve error diagnostics on selector expression failure. 2013-03-12 15:31:05 +00:00
Steve Powell 07e64a707b RJMS-74: Add analyse call which type-checks the SQL expression, and aborts add_binding when erroneous. 2013-03-11 17:03:16 +00:00
Steve Powell 9ac7a94cab RJMS-74: Merge branch 'master' into RJMS-74 2013-03-08 13:48:05 +00:00
Steve Powell f2054812b1 Add open_source_licenses.txt file. 2013-03-08 13:47:48 +00:00
Steve Powell 9ae4a5521f RJMS-74: Tidy some variable usage. 2013-03-05 16:44:23 +00:00
Steve Powell 95105c276f RJMS-74: Typo 2013-03-05 15:35:24 +00:00
Steve Powell 68cdcd52b9 RJMS-74: Fix compile_sql function. 2013-03-05 15:33:22 +00:00
Steve Powell c5b824249d RJMS-74: Ensure sjx_evaluator imported. 2013-03-05 15:16:25 +00:00
Steve Powell 4298ac4805 RJMS-74: Avoid returning non-boolean results;
correct mnesia basic read function.
2013-03-05 12:50:04 +00:00
Steve Powell f30f12e292 RJMS-74: Typo 2013-03-04 17:23:57 +00:00
Steve Powell 6be34bf1d9 RJMS-74: Typo 2013-03-04 16:39:22 +00:00
Steve Powell 6bd3d606f4 RJMS-74: Do work of getting SQL and running evaluate on it for binding checks. 2013-03-04 16:08:40 +00:00
Steve Powell 4fb8fbb3f4 Update description of repository. 2013-03-01 11:27:41 +00:00
Steve Powell 5ed603b96a Base function to deal with database i/o in selector exchange. 2013-02-28 17:25:23 +00:00
Steve Powell 260987bbcb Enable unit tests. 2013-02-28 12:44:56 +00:00
Steve Powell 5785461681 Added omitted exchange type behaviour method 'policy_changed/3'. 2013-02-28 12:44:25 +00:00
Steve Powell 9d4d13083f Start to flesh out topic selector exchange 2013-02-27 17:33:06 +00:00
Steve Powell ba1fb1d2b2 Set and use the rabbitmq.version parameter in the plugin build. 2013-02-26 18:27:29 +00:00
Steve Powell 23ab43521a Make standalone build/repo. 2013-02-14 18:08:12 +00:00
Steve Powell 06c6064116 Set MAVEN_ARTEFACT filename as a parameter. 2013-02-13 17:31:54 +00:00
Steve Powell 5a3091a3a1 Make RabbitMQ version overridable (and control umbrella building). 2013-02-13 16:37:00 +00:00
Steve Powell 99b70cc2f5 Put RabbitMQ version on exchange plugin. 2013-02-13 16:11:22 +00:00
Steve Powell e0ece8bf74 Upgrade to build against rabbitmq-3.0.1. 2013-02-05 17:42:40 +00:00
Steve Powell 4dc193d6cd Extract plugin to target/plugins directory on package. 2013-02-04 14:15:53 +00:00
Steve Powell bfcaedabcf Include sjx query source into exchange build. 2013-01-30 10:06:07 +00:00
Steve Powell 1c95cddd69 Correct rabbit plugin profile:
- better announcements in rabbitmq boot phases
  - run-in-broker make target for local hand-testing of plugin
  - removal of bad {mod, …} entry in application descriptor
2013-01-25 15:41:38 +00:00
Steve Powell 3e6f24dc67 Add database initialisation to exchange and put in trivial function. 2013-01-24 17:52:01 +00:00
Steve Powell bcfb07a068 Modify Makefile and build structure to have controlled makes. 2013-01-23 17:35:40 +00:00
Steve Powell 55f1967712 Update README. 2013-01-22 18:35:16 +00:00
Steve Powell 2dc3a6a065 Add Makefile2 which builds plugin standalone. 2013-01-22 18:21:14 +00:00
Steve Powell 537d87cfc2 Ignore build artefacts 2013-01-22 16:16:12 +00:00
Steve Powell e073d90973 LICENCE update 2013-01-22 15:02:33 +00:00
Steve Powell c093c147c6 Copyright dates 2013-01-22 15:00:27 +00:00
Steve Powell 3e1e3ebd07 Ignore built artefacts. 2013-01-21 16:18:12 +00:00
Steve Powell 9d62574eb3 no-op exchange that builds 2013-01-21 15:49:42 +00:00
Steve Powell 87c43e3602 Update README re build. 2012-08-24 14:22:52 +01:00
Steve Powell 1f5acfe0fd Initial contents 2012-08-24 14:18:40 +01:00