Security News
npm Updates Search Experience with New Objective Sorting Options
npm has a revamped search experience with new, more transparent sorting options—Relevance, Downloads, Dependents, and Publish Date.
@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 func
or 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.
The npm package @iobroker/db-objects-file receives a total of 34,026 weekly downloads. As such, @iobroker/db-objects-file popularity was classified as popular.
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 0 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
npm has a revamped search experience with new, more transparent sorting options—Relevance, Downloads, Dependents, and Publish Date.
Security News
A supply chain attack has been detected in versions 1.95.6 and 1.95.7 of the popular @solana/web3.js library.
Research
Security News
A malicious npm package targets Solana developers, rerouting funds in 2% of transactions to a hardcoded address.