mirror of
https://github.com/sablierapp/sablier.git
synced 2025-12-24 22:39:25 +01:00
93 lines
3.0 KiB
Markdown
Executable File
93 lines
3.0 KiB
Markdown
Executable File
# java-properties
|
|
|
|

|
|
|
|
Read Java .properties files. Supports adding dynamically some files and array key value (same key multiple times)
|
|
|
|
## Getting Started
|
|
|
|
Install the module with: `npm install java-properties`
|
|
|
|
## Documentation
|
|
|
|
```javascript
|
|
var properties = require('java-properties');
|
|
|
|
// Reference a properties file
|
|
var values = properties.of('values.properties');
|
|
|
|
//Read a value from the properties file
|
|
values.get('a.key'); //returns value of a.key
|
|
|
|
//Add an additional file's properties
|
|
values.add('anotherfile.properties');
|
|
|
|
//Clear out all values
|
|
values.reset();
|
|
...
|
|
// returns the value of a.key of 'defaultValue' if key is not found
|
|
values.get('a.key', 'defaultValue');
|
|
...
|
|
// returns the value of the a.int.key as an int or 18
|
|
values.getInt('a.int.key', 18);
|
|
...
|
|
// returns the value of the a.float.key as a float or 18.23
|
|
values.getFloat('a.float.key', 18.23);
|
|
...
|
|
// returns the value of the a.bool.key as an boolean. Parse true or false with any case or 0 or 1
|
|
values.getBoolean('a.bool.key', true);
|
|
...
|
|
// returns all the keys
|
|
values.getKeys();
|
|
...
|
|
// adds another file the properties list
|
|
values.addFile('anotherFile.properties');
|
|
...
|
|
// empty the keys previously loaded
|
|
values.reset();
|
|
...
|
|
[ -- .properties file
|
|
an.array.key=value1
|
|
an.array.key=value2
|
|
]
|
|
values.get('an.array.key'); // returns [value1, value2]
|
|
|
|
// Multiple contexts
|
|
var myFile = new PropertiesFile(
|
|
'example.properties',
|
|
'arrayExample.properties');
|
|
myFile.get('arrayKey');
|
|
|
|
var myOtherFile = new PropertiesFile();
|
|
myOtherFile.addFile('example.properties');
|
|
myOtherFile.addFile('example2.properties');
|
|
```
|
|
|
|
## Contributing
|
|
|
|
In lieu of a formal styleguide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. Lint and test your code.
|
|
|
|
## Release History
|
|
|
|
- 0.1.0 Initial commit
|
|
- 0.1.5 Support empty strings
|
|
- 0.1.6 New API: `getKeys`
|
|
- 0.1.7 New APIs: `addFile` and `reset`
|
|
- 0.1.8 Add array key (the same key many time in files)
|
|
- 0.2.0 Wrap features into a class to be able to have multiple running contexts
|
|
- 0.2.1 Add default value to get method. Add getInt and getFloat to get an integer or float value
|
|
- 0.2.2 Add getBoolean method to get a value as a boolean. Accepted values are true, TRUE, false, FALSE, 0, 1
|
|
- 0.2.3 Add getMatchingKeys method
|
|
- 0.2.4 Allow multi-line properties
|
|
- 0.2.5 Refactorings, no new features
|
|
- 0.2.6 FIX interpolation when a property is multivalued
|
|
- 0.2.7 Get only last value for int and boolean in case of multivalued attribute
|
|
- 0.2.8 FIX unicode \uxxxx char decoding
|
|
- 0.2.9 Allow multiple double quotation marks
|
|
- 0.2.10 fix bug with escaped : & = (thanks @Drapegnik)
|
|
- 1.0.0 Rewrite as Typescript. Support Node 6+ only
|
|
|
|
## License
|
|
|
|
Licensed under the MIT license.
|