
Security News
The Changelog Podcast: Practical Steps to Stay Safe on npm
Learn the essential steps every developer should take to stay secure on npm and reduce exposure to supply chain attacks.
@iobroker/db-objects-file
Advanced tools
The Library contains the Database classes for File based objects database client and server.
The Library contains the Database classes for File based objects database client and server.
The objects db client is always a redis client, but if the database type is file, it will communicate with a built-in redis simulator instead of a real redis db.
In the js-controller we use ioredis, the library supports all redis commands by simply calling them on the client instance, like redis.set("foo", "bar").
For an explanation of the commands in native redis, we refer to the redis documentation.
Currently, the following commands are supported by the simulator for objects db:
The simulator supports four different namespaces:
cfg.f.)cfg.o.)cfg.s.)meta.)| Command | State of integration | namespace |
|---|---|---|
| quit | full | independent |
| script | partial | independent |
| evalsha | full | independent |
| publish | full | objects, meta |
| mget | full | objects, files |
| get | full | objects, files, meta |
| set | full | objects, files, meta |
| del | full | objects, files |
| exists | full | objects, files, sets |
| scan | full | objects, files, sets |
| keys | full | objects, files, sets |
| psubscribe | full | objects, meta |
| punsubscribe | full | objects |
| config | dummy | independent |
| client | partial | independent |
| multi/exec | partial | independent |
| sadd | dummy | independent |
| srem | dummy | independent |
| sscan | full | objects, files, sets |
| eval | dummy | independent |
| Command | State of integration |
|---|---|
| mget | full |
| get | full |
| set | full |
| rename | full |
| del | full |
| exists | full |
| scan | full |
| keys | full |
This will close the connection.
When receiving a script, the server mocks the methods load and exists, load will store a funcor design script in memory. On an exists request, the server will return all known scripts.
Evalsha can be used to execute a stored script.
On publish the server will publish to all clients who have subscribed to the objects, just like redis does.
mget is used to receive multiple objects/files from the server.
get is used to receive a single object/file from the server.
set is used to set an object/file to the database.
rename allows renaming a file.
del deletes a given object/file from the db.
exists checks if a given object/file exists in the database. For sets this is just a dummy.
scan is just like keys and returns all matching keys, but addtionally it returns the counter (always 0) to satisfy the redis client.
For sets this is just a dummy.
It returns all matching keys. For sets this is just a dummy.
Subscribes for a pattern to receive object changes.
Unsubscribes a pattern to no longer receive object changes.
Mainly a dummy, just sends a positive response if lua-time-limit change received.
Is used to handle setname and getname requests. setname is used to change the logging namespace. On getname the server will respond with the current connection name, which has been set via getname.
Multi/exec is fully integrated but only works with pipelines and will give a piped response. It will not respond until exec is called.
On exec the simulator responds with OK (for multi), QUEUED for every command and the real results as an array for exec.
Just a dummy, always responds with 1, which means we have added the item to the set.
Just a dummy, always responds with 1, which means we have removed the item from set.
Does the same as scan.
Just a dummy, always responds with null.
Apache 2.0 Copyright 2018-2024 bluefox dogafox@gmail.com
FAQs
The Library contains the Database classes for File based objects database client and server.
We found that @iobroker/db-objects-file demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 6 open source maintainers collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Learn the essential steps every developer should take to stay secure on npm and reduce exposure to supply chain attacks.

Security News
Experts push back on new claims about AI-driven ransomware, warning that hype and sponsored research are distorting how the threat is understood.

Security News
Ruby's creator Matz assumes control of RubyGems and Bundler repositories while former maintainers agree to step back and transfer all rights to end the dispute.