Commit graph

44 commits

Author SHA1 Message Date
Mike Bierlee 42e93e64d0 Support semicolons as comments in keyvalue config 2022-10-11 20:49:40 +03:00
Mike Bierlee 5a34831b03 Extract java config parser to generic reusable key/value parser 2022-10-11 20:29:26 +03:00
Mike Bierlee 7ff59bfc00 Add new test case 2022-10-11 20:18:25 +03:00
Mike Bierlee 75becace37 Add autogenerated documentation 2022-10-09 01:10:05 +03:00
Mike Bierlee 16b5032e9b Ignore comments in java properties 2022-10-09 00:17:20 +03:00
Mike Bierlee 4ee94f8a9c Add properties files to loadConfig 2022-10-09 00:12:24 +03:00
Mike Bierlee 34e78be898 Trim key/value in java props 2022-10-08 23:53:56 +03:00
Mike Bierlee 40a20ca3ff Add java properties config factory 2022-10-08 23:46:34 +03:00
Mike Bierlee 35c6a25382 Add setter to easily assign values to path in config 2022-10-07 00:51:17 +03:00
Mike Bierlee 6ea996cd08 Accept whitespace a bit more 2022-09-29 02:28:48 +03:00
Mike Bierlee bad8f0ec6d Add escaping and hardening 2022-09-29 02:04:58 +03:00
Mike Bierlee c5bdc9d41a Add config from other config substitution 2022-09-29 01:31:10 +03:00
Mike Bierlee 3c7918c2e2 Add return of default values 2022-09-29 00:38:54 +03:00
Mike Bierlee 72af2f322e Add env var substitution test for JSON 2022-09-28 23:54:38 +03:00
Mike Bierlee 84220739d8 Add ability to disable env var substitution 2022-09-28 23:49:08 +03:00
Mike Bierlee 8389d75958 Add null value test 2022-09-28 23:35:10 +03:00
Mike Bierlee f0d5f34390 Add test for conservation of whitespace 2022-09-28 23:33:23 +03:00
Mike Bierlee 2d934074fd Add env var substitution 2022-09-28 23:31:52 +03:00
Mike Bierlee daf4c9029b Add uber convenience function 'loadConfig' 2022-09-25 19:38:37 +03:00
Mike Bierlee e62fe7c9ae Rename dictionary to config in unittests for consistency 2022-09-25 19:23:27 +03:00
Mike Bierlee ff6afb7e9c Trim segments in paths 2022-09-25 19:20:52 +03:00
Mike Bierlee 3e272f9e5a Add imperative convenience functions for loading JSON 2022-09-25 19:12:35 +03:00
Mike Bierlee 94ae45a408 Add JSON config example 2022-09-25 19:03:26 +03:00
Mike Bierlee 3c5f88b9fd Add ability to fetch a subconfig 2022-09-24 20:05:15 +03:00
Mike Bierlee 2a5ae23576 Simplify creation of dictionaries in tests 2022-09-24 19:49:38 +03:00
Mike Bierlee cb8e737e6c Add get with type conversion for convenience 2022-09-24 19:42:29 +03:00
Mike Bierlee 32598ca434 Add public inline documentation 2022-09-24 19:31:21 +03:00
Mike Bierlee 20a7c0471b Add file loading 2022-09-24 18:51:32 +03:00
Mike Bierlee a1a99d1dee Add json string parsing 2022-09-24 18:43:56 +03:00
Mike Bierlee fcbc372923 Add JsonConfigFactory 2022-09-24 18:05:33 +03:00
Mike Bierlee 1272ef1bc4 Allow empty path
just attempt to fetch the root
2022-09-24 17:09:20 +03:00
Mike Bierlee bcd9bf22e3 Remove unneccesary check
The rest of the code already supports this case
2022-09-24 17:07:08 +03:00
Mike Bierlee 373f2fc1c3 Define ConfigLoader interface
And privatize internal classes
2022-09-24 17:05:47 +03:00
Mike Bierlee e293baf526 Rename project to detach it from Poodinis 2022-09-24 17:04:57 +03:00
Mike Bierlee af6dd95d57 Support conventional array indexing notation
i.e. bla.bleh[4]
2022-09-24 03:51:02 +03:00
Mike Bierlee 7d7dd9a328 Get rid of empty segments in config path 2022-09-24 03:32:30 +03:00
Mike Bierlee 70301442a2 Add additional tests 2022-09-24 03:27:41 +03:00
Mike Bierlee 16b430a135 Slight refactor 2022-09-24 03:18:49 +03:00
Mike Bierlee a4b0e7982e Add support for getting config from objects 2022-09-24 02:55:44 +03:00
Mike Bierlee e3673755de Make it possible to get a value from a root object 2022-09-24 02:07:31 +03:00
Mike Bierlee cde58e1224 Rename node objects 2022-09-24 01:15:16 +03:00
Mike Bierlee c6e85e8eba Add reading values from config root 2022-09-24 01:13:08 +03:00
Mike Bierlee 5ab78d08d6 Add basic config dictionary 2022-09-23 23:40:36 +03:00
Mike Bierlee 525e82410f Add project skeleton 2022-09-23 23:34:22 +03:00