1
0
Fork 0
Commit Graph

348 Commits (22507c488a6e9a72547ab6d1927ef222506f57ac)

Author SHA1 Message Date
Mike Gerwitz 22507c488a Metadata merging 2017-07-13 15:58:50 -04:00
Mike Gerwitz 2eacd310b2 Process metadata and provide to rate process
Prefixes with "meta:".

* src/server/Server.js (initQuote): Initialze metadata to empty.
* src/server/daemon/controller.js (createQuote): Add metabucket.
* src/server/db/MongoServerDao.js (saveQuote): Add additional
  documentation to docblock.  Save all metadata if no bucket data
  provided (which indicates a full quote save).  This happens on
  version change.
* src/server/rater/ProcessManager.js (_genData): Add method to merge
  metadata into bucket data with "meta:" prefix.
  (byId): Use merged data.
2017-07-10 10:09:24 -04:00
Mike Gerwitz 22c3a21cdf ServerSideQuote: Add metabucket
* src/server/quote/ServerSideQuote.js (_metabucket): Add field.
  (getMetabucket, setMetabucket, setMetadata): Add methods.
2017-07-10 10:09:24 -04:00
Mike Gerwitz 37f84b7da8 Initialize metadata on quote version change
Consequently, on quote load as well.

* src/server/quote/ProgramQuoteCleaner.js (_fixMeta): New method.
  (clean): Use it.
2017-07-10 10:09:22 -04:00
Mike Gerwitz e963761d22 DataProcessor {type=>param} docblock correction
I seem to like messing trivial things up.

* src/server/request/DataProcessor.js (constructor): Docblock fix.
2017-07-06 15:06:57 -04:00
Mike Gerwitz 4d22107a57 Create ProcessManager out of rater/service
* src/server/daemon/Daemon.js (__construct): Reference new class.
* src/server/rater/ProcessManager.js: Add class (extracted from
  service).
* src/server/rater/service.js: Refactored into ProcessManager.
2017-07-06 15:06:57 -04:00
Mike Gerwitz 00f457d3d8 DataProcessor code formatting fix (= alignment)
Was bugging the hell out of me.

* src/server/request/DataProcessor.js (constructor): Align `='s.
2017-07-06 15:06:57 -04:00
Mike Gerwitz 7e4d872db2 Rating s/thread/process/ terminology fix
It never was a thread; it's always been a process.

* src/server/rater/thread.js: Renamed.
* src/server/rater/process.js: Renamed from thread.js.
* src/server/rater/service.js: s/thread/process/.
2017-07-06 15:06:55 -04:00
Mike Gerwitz d961a16420 Shorten "unlock quote" string
A bit arbitrary, but it contains text that's coupled to the layout of
the UI, and it usually pushes the button down off of the bar.

* src/client/Client.js (_showLockedNotification): Remove end of
  "unlock quote" string.
2017-07-05 16:01:15 -04:00
Mike Gerwitz 81a829549c Remove accidentally committed console.log on script filename
* src/server/daemon/scripts.js: Remove console.log.
2017-07-05 11:40:27 -04:00
Mike Gerwitz 5456f32446 Version bump 1.1.{1=>2}
* configure.ac: Update revision number.
2017-06-29 16:23:10 -04:00
Mike Gerwitz c20fbbeded Rename {Rating=>Calc}Worksheet
The class was renamed, but not the file.  Whoops.

* src/ui/worksheet/CalcWorksheet.js: Rename from RatingWorksheet.js.
* src/ui/worksheet/RatingWorksheet.js: Remove file.
2017-06-29 16:21:48 -04:00
Mike Gerwitz c0d0f4b463 Revert CapturedUserResponse temporarily
This reverts CapturedUserResponse to the state it was in prior to
being extracted into liza.  The issue was supposed to have been
resolved by now, but I haven't wanted to make an ease.js release until
the company that bought the company I work for signs the copyright
waiver.  Which has been slow-going, to say the least.

The problem is that it is not recognizing a named trait extending a
class as a parameterized trait (it's not seeing __mixin).

* src/server/request/CapturedUserResponse.js: Use interface.
* src/server/request/IProtUserResponse.js: Add temporary interface.
2017-06-29 15:57:22 -04:00
Mike Gerwitz e1458ce955 Version 1.1.{0=>1} bump 2017-06-29 14:19:19 -04:00
Mike Gerwitz 0401860377 Cast value to string before validating
* src/validate/BucketDataValidator.js (_forEach): Cast data to string
  before passing to formatter, which expects a string.
2017-06-29 14:18:01 -04:00
Mike Gerwitz 37cb6716de 1.{0=>1}.0 version bump 2017-06-29 11:01:23 -04:00
Mike Gerwitz 18cd46c87b doc/Makefile.am (liza_TEXINFOS): Add missing license.texi 2017-06-29 11:01:23 -04:00
Mike Gerwitz 35af4bdf19 Server-side Data API support
The Data API stuff is pretty well coupled to the concept of a UI, and
the code is a mess that was just extracted from Program.js, so this
isn't the prettiest implementation.  I hope that we'll have more time
for it in the somewhat-near future, since this is going to be core to
all server-side network requests for data.
2017-06-29 10:50:02 -04:00
Mike Gerwitz 0c24e3d280 Populate document metadata using Data APIs
What a cluster.

This was a lot of work to work around existing, bad APIs; there is no
time to refactor at the moment; this already took much longer than
expected.
2017-06-28 16:33:24 -04:00
Mike Gerwitz 65ab92f701 Add SpoofedNodeHttpImpl
Session spoofing is needed for making authenticated requests.
2017-06-28 15:51:18 -04:00
Mike Gerwitz d47d77bb5e Add server.meta.DapiMetaSource
Encapsulates the nasty.

* src/server/meta/DapiMetaSource.js: Add class.
* test/server/meta/DapiMetaSourceTest.js: Add test case.
2017-06-28 14:56:28 -04:00
Mike Gerwitz b3f8ed96dd Fix typo in RestrictedDataApi error
* src/dapi/RestrictedDataApi.js (_requestParamCheck): Unknown param
  error typo fix.
2017-06-28 14:56:28 -04:00
Mike Gerwitz 95c28d4db4 Extract Server construction into DocumentServer
* src/server/DocumentServer.js: Add facade.
* src/server/daemon/controller.js: Use it.
2017-06-28 14:56:26 -04:00
Mike Gerwitz 07b5d2f1b6 doc: Began server documentation
* server.texi: Add file.
2017-06-22 13:07:30 -04:00
Mike Gerwitz 630af0a062 Add ability to provide origin to NodeHttpImpl
* src/dapi/http/NodeHttpImpl.js (_parseUrl): Add method.
  (__construct): Add argument.
  (requestData): Use it.

* test/dapi/http/NodeHttpImplTest.js: Add tests.
2017-06-21 13:55:15 -04:00
Mike Gerwitz c231983f34 doc: Add @jsmethod macro
* doc/macros.texi (@jsmethod): Add macro.
2017-06-21 13:20:56 -04:00
Mike Gerwitz f870ca964c doc: Add @todo
* doc/macros.texi (@todo): Add macro.
2017-06-21 13:20:40 -04:00
Mike Gerwitz 5c99243cdc doc: Add beginning of dapi documentation
* doc/Makefile.am (liza_TEXINFOS) [dapi.texi]: Include file.
* doc/dapi.texi: Add file.
* doc/design.texi: Add mention in list and reference chapter.
* doc/liza.texi: Reference chapter.
2017-06-21 10:52:46 -04:00
Mike Gerwitz be0121d8cb doc: Add @progxmlref, @dapi, @procguic{,x}ref, @proguicrefsuffix
* doc/macros.texi (@progxmlref, @dapi, @progcuicref, @proguicxref
  @proguicrefsuffix): Add macros.
2017-06-21 10:52:46 -04:00
Mike Gerwitz f873da0928 doc: Add @srcrefjs macros
* doc/macros.texi (srcrefjs): Add macros when src is both available and not
2017-06-21 10:52:46 -04:00
Mike Gerwitz 83b5f1ab74 doc: Update @helpwanted text
* doc/macros.texi (helpwanted): Adjust phrasing to account for some existing text.
2017-06-21 10:52:46 -04:00
Mike Gerwitz d2dd963614 doc: Extract design sections into own chapters
* assert.texi, bucket.texi, client.texi, pred.texi, program.texi,
  validation.texi: New files.
* design.texi: Extract text into above.
* liza.texi: Add @menu references and @include each new file.
2017-06-21 10:52:46 -04:00
Mike Gerwitz a1d5e7d3c5 Instantiate appropriate HttpImpl
* src/dapi/DataApiFactory.js (fromType): Instantiate NodeHttpImpl when
  XMLHttpRequest is undefined.
2017-06-21 10:52:46 -04:00
Mike Gerwitz 624f35a489 XhrHttpImpl: throw {=>Http}Error
* src/dapi/http/XhrHttpImpl.js (serveError): Throw HttpError instead
  of Error.
* test/dapi/http/XhrHttpImplTest.js: Test updated accordingly.
2017-06-21 10:52:46 -04:00
Mike Gerwitz a3e359a050 Add node dapi HTTP implementation
* src/dapi/http/HttpError.js: Add error subtype.
* src/dapi/http/NodeHttpImpl.js: Add node-based HTTP impl.
* test/dapi/http/HttpErrorTest.js: Add test.
* test/dapi/http/NodeHttpImplTest.js: Add test.
2017-06-21 10:52:46 -04:00
Mike Gerwitz 3be28a7858 Re-add missing Server#_sanitizeBucketData return
During liberation, this was accidentally removed...which breaks stuff.

* src/server/Server.js (_sanitizeBucketData): Re-add missing return statement.
2017-06-21 10:52:41 -04:00
Mike Gerwitz 6a86564364 Add missing FDL text
...!  No idea how this was missed.

* doc/license.texi: Add file.
* liza.texi: Use it.
2017-06-20 14:17:06 -04:00
Mike Gerwitz f8a3c4e9fc Add missing mongodb dependency
* package.json.in (dependencies) [mongodb]: Add dependency (ancient version!)
* yarn.lock: Update.
2017-06-20 14:17:03 -04:00
Mike Gerwitz 55fccd8b8e Remove mvnotices from docs
Liza has been liberated.

* doc/design.texi: Remove all @mvnotice calls.
* doc/macros.texi (mvnotice): Remove macro.
2017-06-13 00:14:03 -04:00
Mike Gerwitz 47f9a7e5c8 Add lock files for npm and yarn
* npm-shrinkwrap.json: Add file.
* yarn.lock: Add file.
2017-06-08 14:57:49 -04:00
Mike Gerwitz 83fa4f717c package.json.in (chai): Restrict version to satisfy chai-as-promised 2017-06-08 14:57:16 -04:00
Mike Gerwitz 1bb5191e3e LoVullo Associates => R-T Specialty
Copyright notices updated.  More casual references to "LoVullo
Associates" replaced with "RT Specialty / Lovullo", which will be "RT
Specialty Buffalo" in the future.  Or "RT Specialty", depending on how
this is rolled out.  Or "Ryan Specialty Group".  Who knows.

"R-T Specialty, LLC." is the legal name, which includes the dash.  Not
to be confused with a certain television network.
2017-06-08 14:48:43 -04:00
Mike Gerwitz 0cf800f5d9 Add event graph diagram
* doc/diagram/event-graph.dot: Add graph.
* doc/diagram/.gitignore: Ignore `*.svg'.
2017-06-08 14:38:32 -04:00
Mike Gerwitz 54d2eff8b9 Add diagram generation with graphviz
* configure.ac (TWOPI, HAS_TWOPI): Add variables.
  Check for towpi.
* doc/.gitignore (diagrams/*.svg): Add output file ignore.
* doc/Makefile.am: Add svg diagram building.
2017-06-08 14:38:32 -04:00
Mike Gerwitz 657573ab63 Near-complete liberation of liza
I have sat on releasing a lot of this code for years because I wanted
the liza repo to be in a pristine state---tests and all---which
required a great deal of refactoring.  Well, that never happened, and
time is up.

LoVullo Associates---my employer---has been purchased by another
company.  This means that any agreement with LoVullo regarding
releasing free software is going to have to be re-negotiated with this
new company, and I have no idea how those negotiations will go.  So,
I have no choice but to simply release everything in its current state,
or risk it being lost forever.

This represents work over the past 6--7 years, 99.9% of it written by
me.  This project has been my baby for quite some time, and has been
through a number of battles with deadlines and other unfortunate
circumstances; the scars show.  I also didn't really "know" JS when
starting this project.  Perhaps you can help improve upon it.

There are some odds-and-ends that could be committed.  And references
to insurance and LoVullo need to be removed to generalize this.

I hope that this will not be the last public commit for this project.
I'll fight the good fight and we'll see where that takes us.  Maybe
it'll be easy.

Happy hacking.
2017-06-08 14:38:28 -04:00
Mike Gerwitz 729e45306f .travis.yml: Remove
This now builds via a GitLab pipeline
2017-03-28 13:40:35 -04:00
Mike Gerwitz a9711fe139 Initial architecture documentation in manual 2017-03-28 13:29:31 -04:00
Mike Gerwitz 632ffe74c0 .gitlab-ci.yml: Add --with-srcuri to build step 2017-03-23 12:18:41 -04:00
Mike Gerwitz 7c6b884895 doc/design.texi (Group Styles): Put table into float 2017-03-23 12:16:52 -04:00
Mike Gerwitz bff17bdbb6 doc/liza.css: Change font
This imports from Google, which is a privacy risk.  These should be
moved to be hosted locally; their download can be scripted.
2017-03-23 12:16:52 -04:00