| Branch: | Tag: | Revision:

gdp / apps / gdp-rest.c @ master

History | View | Annotate | Download (34.5 KB)

# Date Author Comment
79c3499d 07/17/2019 01:40 PM Rick Pratt

Minor commentary updates to gdp-rest.c and several READMEs to reflect transition to GDP v2 Network.

f63dbddd 07/17/2019 10:41 AM Rick Pratt

Eliminate gdp_priv.h dependency via transition to gdp_datum_getrecno()

de9d8389 06/20/2019 01:19 PM Rick Pratt

While debugging GDP RESTful gateway on GDP v2 network problems (newly migrated), valgrind turned up json object leaks in gdp-rest and a minor servinfo leak in scgi, which are both addressed by this commit. Some libgdp items also turned up which may be related to current problems, but those will be processed separately.

0cb06b6b 06/05/2019 01:56 PM Rick Pratt

Update gdp-rest.c relative to gdp-create revisions, prior to moving RESTful gateway to GDP v2 Network.

d0a04e62 05/03/2019 03:09 PM Eric Allman

Fix trailing white space glitches in several files; no code changes.

c87dd166 01/23/2019 07:56 AM Eric Allman

Update license date on all files. No functional changes.

55ebd220 07/06/2018 05:48 PM Rick Pratt

Incorporate latest EX_CANTCREAT enhancement to skip "does it exist" test.

a555e771 07/06/2018 05:36 PM Rick Pratt

Update gdp-rest source to GDP Version 2 compatibility.

5ced6d34 06/09/2018 01:37 PM Eric Allman

Change GDP_EVENT_EOS to GDP_EVENT_DONE, since it isn't specific to
subscriptions. Also documentation updates reflecting the datum changes
in the previous commit.

eae1d3ec 05/25/2018 01:22 PM Eric Allman

The grand renaming: GCL is (mostly) gone in favor of GOB and GIN.

bfecf573 01/23/2018 05:20 PM Eric Allman

Rather non-intuitive changes to suppress "return value not used"
warning; just (void)ing the call no longer works.

f34c3e4e 10/10/2017 10:29 AM Rick Pratt

improved performance/reduced latency for EMG-GDP-Waffle Robot demo

2ffaa038 08/30/2017 12:45 PM Rick Pratt

Revised gdp-rest binary (along with gdp-rest-01 lighttpd.conf) to support web browser javascript CORS pre-flight negotiation. Includes standalone html + js testcase.

8404f1db 08/04/2017 02:42 PM Rick Pratt

Revise gdp-rest binary and to retry during intermittent DNS outages.

d56dfbff 06/02/2017 05:20 PM Christopher Brooks

Fixed gcc-4.4.7: error: ‘for’ loop initial declarations are only allowed in C99 mode.

04ad7859 06/02/2017 03:13 PM Rick Pratt

RESTful POST/PUT GCLs creation

f7d9ac86 05/15/2017 09:32 AM Rick Pratt

RESTful API: use keep-in-cache with eventual reclaim option on read/append gdp gcl open

e64cc272 05/08/2017 01:42 PM Rick Pratt

RESTful HTTP GET now returns response recno, eliminated minor mem leak on GET open/read fail path; RESTful HTTP POST no longer deadlocks on gcl self-lock error. Added standalone variant of gdp-rest service template.

a0672b22 03/13/2017 05:16 PM Eric Allman

Have gdp-rest notify systemd when ready to take commands.

0b88875d 03/10/2017 11:32 PM Eric Allman

Improve error message in gdp-rest and add some debugging.

897accec 02/06/2017 10:41 AM Eric Allman

Update licenses to 2017.

c5699a87 02/06/2017 10:36 AM Eric Allman

Make gdp-rest use fewer GDP library internal interfaces.

d2647d1f 07/26/2016 07:34 PM Eric Allman

Next take on read-by-timestamp. This version works for read, multiread,
and subscribe. There are still some glitches (e.g., you can't have a
starting timestamp in the future) but fixing these would require major
code restructuring, and besides, you can't specify a starting record...

a5a912e2 06/24/2016 05:38 PM Eric Allman

Rename ep_fopensmem => ep_fopen_smem for consistency with other names.

6bd5476b 12/01/2015 01:22 PM Eric Allman

Update license. No code changes.

b23b6dc2 11/24/2015 02:03 PM Eric Allman

Code cleanup: pull out dead code (#ifdefed out) and old SVN version

055d3009 11/21/2015 01:20 PM Eric Allman

Include copyright in all files. There are scripts to do bulk
replacement of the copyright if desired.

034d97fd 07/30/2015 12:06 PM Eric Allman

Add creation time to logs. This also changes the ep_time_format and
ep_time_print APIs.

a29668f9 02/16/2015 09:16 AM Eric Allman

Tweak REST interface and documentation for new conventions.

1d79b58a 02/15/2015 01:31 PM Eric Allman

Fix a problem that caused all REST commands to hang.

55b8c1ad 02/02/2015 08:17 AM Eric Allman

Change gdp_event_next to allow selection of events for a specific GCL.

a1a8f4f7 01/31/2015 05:19 PM Eric Allman

Formatting fixes: remove trailing whitespace on lines.

6fcf54ad 01/29/2015 04:56 PM Eric Allman

Add placeholder qos requirements parameter on open.
Document gdp_gcl_getstat as taking a name, not a handle.

05e1cb19 01/29/2015 04:40 PM Eric Allman

Rename PUBLISH => APPEND (API change).
Eliminate gdp_datum_setrecno and gdp_datum_setts (didn't make sense).
Fix example code in protocol documentation.

d3cbb6dc 01/22/2015 01:16 PM Eric Allman

Change gdp_event_next to take an int64_t timeout (in nanoseconds);
also, convert it to use the new ep_thr_cond_wait "absolute time"

cc7db91c 01/16/2015 04:08 PM Eric Allman

Make parameter names a bit more consistent.

3e05a791 01/12/2015 05:01 PM Eric Allman

Fix gdp-rest to not attempt to create GCLs (since at the moment that
would requiring knowing the "true name" of the gdplogd to store that

549b367d 12/26/2014 07:55 AM Eric Allman

Begin change to new on-wire protocol. Involves lots of renaming.
Amazingly it still seems to run.

e70f42ee 12/04/2014 11:36 AM Eric Allman

Change gclh => gcl throughout for consistency

d0a68561 11/25/2014 02:31 PM Eric Allman

Merge metadata work into callback work so that API changes will happen
at the same time.
Merge commit '57efec14997ab65a1bba56b8865a83acc8c041d7'

686e4579 11/25/2014 01:30 PM Eric Allman

Change ep_thr_cond_wait and gdp_event_next to take timeout parameters

5c6e2b40 11/05/2014 11:11 AM Eric Allman

First step at implementing metadata. Internals are there, but there's
no way to use it yet.

0f868b09 10/29/2014 12:26 PM Eric Allman

Fix bogus declaration (struct json_t => json_t) in gdp-rest

80d9fdd5 10/27/2014 05:01 PM Eric Allman

Finish implementing first cut at key-value store.

939e1aee 10/27/2014 03:44 PM Eric Allman

Interim work on a key-value store in gdp-rest.

591ae6e9 10/09/2014 11:20 AM Eric Allman

Allow recno=last in gdp-rest to get the last (most recently written)
record. Also does better command line usage checking.

e96cb715 09/28/2014 04:20 AM Eric Allman

Typo causing confused error messages.

22888d43 09/28/2014 03:38 AM Eric Allman

Correctly return record number and timestamp for data POST

4f2d2174 09/28/2014 01:38 AM Eric Allman

Correctly diagnose "GCL already exists" error on create.

80c5389d 09/27/2014 06:34 AM Eric Allman

Convert over to Jansson library.

18188fcc 09/26/2014 06:23 AM Eric Allman

New REST interface allowing for symbolic GCL names; moves much of the
specification into the query portion. Still a lot to be implemented.

5cd53c1a 09/16/2014 04:06 PM Eric Allman

Change gdp_init to take a parameter with the host:port info for
contacting the GDP daemon. Set most apps to take a -G flag to set this.

126f8146 09/15/2014 02:07 PM Eric Allman

Make administrative parameter names consistent.

7fc131d1 09/09/2014 11:33 AM Eric Allman

Eliminate datum->dlen; it's redundant now.

eeb5068e 08/31/2014 02:08 PM Eric Allman

Fix typo when creating JSON return value.

1b267ec1 08/30/2014 05:27 PM Eric Allman

Get POST working again, mostly by deleting code (!!)

5bc1cdfb 08/28/2014 03:39 PM Eric Allman

Use strerror_r everywhere (this is a threaded application).

0adcb3e0 08/26/2014 01:56 PM Eric Allman

Representation changes and functionality fixes:
* Change representation of gdp_recno_t to be 64 bits.
* Replace tt_interval with EP_TIME_SPEC.
* Augment EP_TIME_SPEC to have a floating-point tv_accuracy field and
pack the structure to keep the whole thing to 16 bytes....

343366c2 08/24/2014 03:21 PM Eric Allman

Clean out unnecessary #includes. Linux portability.

9509f13b 08/23/2014 01:27 PM Eric Allman

Another snapshot. Much closer to having subscriptions working.

193d80dc 08/19/2014 11:01 AM Eric Allman

Changes to use the new interface.

51775f02 08/18/2014 08:28 AM Eric Allman

Basics appear to be working; still have some problems in gdpd_phys.

0314a7a7 08/14/2014 10:15 AM Eric Allman

Snapshot. Starting to work, but not there yet.

82d81b69 08/04/2014 01:47 PM Siqi Lin

Use a custom type for msgno.

4e425382 08/01/2014 01:35 PM Eric Allman

Merge master head into gdp-multithread for checking by Siqi. If it is
working it can be merged back into master.

174e9f6d 07/28/2014 11:31 AM Eric Allman

Revert "Format all gdp files with Allman style, hard tabs only, 4 tab stop"

This reverts commit efad251c484501f32f8d71ffaac0c52e07cbdb99.

efad251c 07/25/2014 04:23 PM Siqi Lin

Format all gdp files with Allman style, hard tabs only, 4 tab stop

b70bcefc 07/10/2014 01:01 PM Eric Allman
  • Change timestamp representation slightly.
  • Pass timestamp back from protocol engine into read messages via GCL. Several of the GCL fields really should only be used when it is locked --- work to be done here.
63b801e4 07/09/2014 03:47 PM Eric Allman

Get gdp-rest working again.

f0313e1d 07/09/2014 12:44 PM Eric Allman

Convert to using a thread for the event loop. There are probably locking issues yet to be discovered.

ae509350 07/07/2014 09:09 AM Eric Allman

Unsuccessful attempt to make gdp-rest work. It turns out that it may be impossible to have one piece of code that can be used in an event-driven and an api-driven environment, which would mean that gdp-rest would need to be rewritten to not use most of the gdp library.

9f48568c 07/01/2014 05:24 PM Eric Allman

Use ep_app_progname instead of progname for linux portability.

0c663d10 07/01/2014 01:43 PM Eric Allman

Conversion from single process to library + daemon. [Why do I have to check this in a second time?]

35509bdc 06/11/2014 01:34 PM Eric Allman

Switch over to new 256-bit nexus names (no longer using uuid); switch the contents of messages to be completely opaque. Still need to store the content-type when creating a nexus.

8296d9a6 06/09/2014 02:29 PM Eric Allman

Implement timestamp printing

3143b747 05/28/2014 09:35 AM Eric Allman
  • Implement timestamping in nexuses. Currently assumes that clocks have an accuracy of one second (can be adjusted using the gdp.clock.accuracy parameter, but should get the information from the clock itself).
  • Clean up debugging a bit, in particular not having to take & all...
6c7e8d27 05/27/2014 12:01 PM Eric Allman

ep_st_openmem => ep_fopensmem
ep_st_pprint => ep_pprint

e9612c44 05/27/2014 07:08 AM Eric Allman

Turn some compile time #defines into run-time parameters.
Update to allow multiple writers.

47c6ea64 05/26/2014 10:25 AM Eric Allman

Initial checkin.