@lakutata/dbus 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +11 -0
- package/README.md +38 -0
- package/dist/CommonExports.d.ts +2 -0
- package/dist/CommonExports.d.ts.map +1 -0
- package/dist/CommonExports.js +44 -0
- package/dist/ComponentExports.d.ts +2 -0
- package/dist/ComponentExports.d.ts.map +1 -0
- package/dist/ComponentExports.js +5 -0
- package/dist/ProviderExports.d.ts +2 -0
- package/dist/ProviderExports.d.ts.map +1 -0
- package/dist/ProviderExports.js +5 -0
- package/dist/components/DBusClientComponent.d.ts +75 -0
- package/dist/components/DBusClientComponent.d.ts.map +1 -0
- package/dist/components/DBusClientComponent.js +125 -0
- package/dist/interfaces/DBusClientOptions.d.ts +7 -0
- package/dist/interfaces/DBusClientOptions.d.ts.map +1 -0
- package/dist/interfaces/DBusClientOptions.js +2 -0
- package/dist/providers/DBusClientProvider.d.ts +75 -0
- package/dist/providers/DBusClientProvider.d.ts.map +1 -0
- package/dist/providers/DBusClientProvider.js +125 -0
- package/dist/tests/DBusTest.spec.d.ts +2 -0
- package/dist/tests/DBusTest.spec.d.ts.map +1 -0
- package/dist/tests/DBusTest.spec.js +26 -0
- package/dist/tests/Test.d.ts +9 -0
- package/dist/tests/Test.d.ts.map +1 -0
- package/dist/tests/Test.js +80 -0
- package/package.json +51 -0
- package/tsconfig.json +7 -0
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# Change Log
|
|
2
|
+
|
|
3
|
+
All notable changes to this project will be documented in this file.
|
|
4
|
+
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
|
+
|
|
6
|
+
# 2.1.0 (2025-07-24)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
### Features
|
|
10
|
+
|
|
11
|
+
* **dbus:** add DBus SDK package with client provider and test setup ([0bc9cd9](https://github.com/lakutata/lakutata-packages/commit/0bc9cd9f99374a57f3250ee9f540ace18be67f9c))
|
package/README.md
ADDED
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
<div align="center">
|
|
2
|
+
|
|
3
|
+

|
|
4
|
+
|
|
5
|
+
</div>
|
|
6
|
+
|
|
7
|
+
<div align="center">
|
|
8
|
+
|
|
9
|
+
)
|
|
10
|
+
)
|
|
11
|
+
)
|
|
12
|
+
)
|
|
13
|
+

|
|
14
|
+
|
|
15
|
+
</div>
|
|
16
|
+
|
|
17
|
+
## 💫 Description
|
|
18
|
+
|
|
19
|
+
Lakutata is a generic development framework written in TypeScript and designed with IoC principles. Its main objective
|
|
20
|
+
is to provide a universal, efficient, and stable development framework. The design goals of Lakutata are not limited to
|
|
21
|
+
web application development; it aims to serve as a foundational framework for desktop applications, embedded systems
|
|
22
|
+
applications, and web applications. The framework primarily adopts an OOP (Object-Oriented Programming) approach and
|
|
23
|
+
encapsulates functionalities such as subprocesses, threads, permission management, and database ORM, enabling the
|
|
24
|
+
framework to be used out of the box.
|
|
25
|
+
|
|
26
|
+
In addition, Lakutata also supports the integration of third-party libraries into the application, allowing developers
|
|
27
|
+
to freely encapsulate and call third-party modules using Lakutata's dependency injection.
|
|
28
|
+
|
|
29
|
+
## ✨ Getting started
|
|
30
|
+
|
|
31
|
+
- Install lakutata DBus SDK
|
|
32
|
+
```shell
|
|
33
|
+
npm install @lakutata/dbus
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
## 🌎 License
|
|
37
|
+
|
|
38
|
+
Lakutata is [MIT licensed](LICENSE).
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export { DBusInterface, DBusObject, DBusService, LocalInterface, LocalObject, LocalService, CreateDBusError, DBusBufferEncoder, DBusBufferDecoder, DBusMessage, DBusSignalEmitter, DBusSignedValue, Signature, DBusMessageEndianness, DBusMessageFlags, DBusMessageType, DBusPropertyAccess, RequestNameFlags, RequestNameResultCode, DBusArray, DBusBoolean, DBusByte, DBusDictEntry, DBusDouble, DBusInt16, DBusInt32, DBusInt64, DBusObjectPath, DBusSignature, DBusString, DBusStruct, DBusUint16, DBusUint32, DBusUint64, DBusUnixFD, DBusVariant, IntrospectableInterface, PeerInterface, ObjectManagerInterface, PropertiesInterface, type BusAddressConnectOpts, type BusNameBasicInfo, type ConnectOpts, type CreateConnectOpts, type CreateSignalEmitterOpts, type DataType, type Types, type DBusInterfaceOpts, type DBusMessageHeader, type DBusObjectOpts, type DBusServiceOpts, type DefineMethodArgumentOpts, type DefineMethodOpts, type DefinePropertyOpts, type emitPropertiesChangedOpts, type DefineSignalOpts, type EmitSignalOpts, type GetPropertyValueOpts, type HandshakeOpts, type IntrospectInterface, type IntrospectMethod, type IntrospectMethodArgument, type IntrospectNode, type IntrospectProperty, type IntrospectSignal, type IntrospectSignalArgument, type InvokeOpts, type NoReplyModeMethodCall, type PropertyOperation, type ReplyModeMethodCall, type ReplyOpts, type ServiceBasicInfo, type SetPropertyValueOpts, type SocketConnectOpts, type StreamConnectOpts, type TCPConnectOpts } from 'dbus-sdk';
|
|
2
|
+
//# sourceMappingURL=CommonExports.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CommonExports.d.ts","sourceRoot":"","sources":["../src/CommonExports.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,aAAa,EACb,UAAU,EACV,WAAW,EACX,cAAc,EACd,WAAW,EACX,YAAY,EACZ,eAAe,EACf,iBAAiB,EACjB,iBAAiB,EACjB,WAAW,EACX,iBAAiB,EACjB,eAAe,EACf,SAAS,EACT,qBAAqB,EACrB,gBAAgB,EAChB,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAChB,qBAAqB,EACrB,SAAS,EACT,WAAW,EACX,QAAQ,EACR,aAAa,EACb,UAAU,EACV,SAAS,EACT,SAAS,EACT,SAAS,EACT,cAAc,EACd,aAAa,EACb,UAAU,EACV,UAAU,EACV,UAAU,EACV,UAAU,EACV,UAAU,EACV,UAAU,EACV,WAAW,EACX,uBAAuB,EACvB,aAAa,EACb,sBAAsB,EACtB,mBAAmB,EACnB,KAAK,qBAAqB,EAC1B,KAAK,gBAAgB,EACrB,KAAK,WAAW,EAChB,KAAK,iBAAiB,EACtB,KAAK,uBAAuB,EAC5B,KAAK,QAAQ,EACb,KAAK,KAAK,EACV,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,KAAK,wBAAwB,EAC7B,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACvB,KAAK,yBAAyB,EAC9B,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,KAAK,oBAAoB,EACzB,KAAK,aAAa,EAClB,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,wBAAwB,EAC7B,KAAK,cAAc,EACnB,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EACrB,KAAK,wBAAwB,EAC7B,KAAK,UAAU,EACf,KAAK,qBAAqB,EAC1B,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EACxB,KAAK,SAAS,EACd,KAAK,gBAAgB,EACrB,KAAK,oBAAoB,EACzB,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACtB,MAAM,UAAU,CAAA"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PropertiesInterface = exports.ObjectManagerInterface = exports.PeerInterface = exports.IntrospectableInterface = exports.DBusVariant = exports.DBusUnixFD = exports.DBusUint64 = exports.DBusUint32 = exports.DBusUint16 = exports.DBusStruct = exports.DBusString = exports.DBusSignature = exports.DBusObjectPath = exports.DBusInt64 = exports.DBusInt32 = exports.DBusInt16 = exports.DBusDouble = exports.DBusDictEntry = exports.DBusByte = exports.DBusBoolean = exports.DBusArray = exports.RequestNameResultCode = exports.RequestNameFlags = exports.DBusPropertyAccess = exports.DBusMessageType = exports.DBusMessageFlags = exports.DBusMessageEndianness = exports.Signature = exports.DBusSignedValue = exports.DBusSignalEmitter = exports.DBusMessage = exports.DBusBufferDecoder = exports.DBusBufferEncoder = exports.CreateDBusError = exports.LocalService = exports.LocalObject = exports.LocalInterface = exports.DBusService = exports.DBusObject = exports.DBusInterface = void 0;
|
|
4
|
+
var dbus_sdk_1 = require("dbus-sdk");
|
|
5
|
+
Object.defineProperty(exports, "DBusInterface", { enumerable: true, get: function () { return dbus_sdk_1.DBusInterface; } });
|
|
6
|
+
Object.defineProperty(exports, "DBusObject", { enumerable: true, get: function () { return dbus_sdk_1.DBusObject; } });
|
|
7
|
+
Object.defineProperty(exports, "DBusService", { enumerable: true, get: function () { return dbus_sdk_1.DBusService; } });
|
|
8
|
+
Object.defineProperty(exports, "LocalInterface", { enumerable: true, get: function () { return dbus_sdk_1.LocalInterface; } });
|
|
9
|
+
Object.defineProperty(exports, "LocalObject", { enumerable: true, get: function () { return dbus_sdk_1.LocalObject; } });
|
|
10
|
+
Object.defineProperty(exports, "LocalService", { enumerable: true, get: function () { return dbus_sdk_1.LocalService; } });
|
|
11
|
+
Object.defineProperty(exports, "CreateDBusError", { enumerable: true, get: function () { return dbus_sdk_1.CreateDBusError; } });
|
|
12
|
+
Object.defineProperty(exports, "DBusBufferEncoder", { enumerable: true, get: function () { return dbus_sdk_1.DBusBufferEncoder; } });
|
|
13
|
+
Object.defineProperty(exports, "DBusBufferDecoder", { enumerable: true, get: function () { return dbus_sdk_1.DBusBufferDecoder; } });
|
|
14
|
+
Object.defineProperty(exports, "DBusMessage", { enumerable: true, get: function () { return dbus_sdk_1.DBusMessage; } });
|
|
15
|
+
Object.defineProperty(exports, "DBusSignalEmitter", { enumerable: true, get: function () { return dbus_sdk_1.DBusSignalEmitter; } });
|
|
16
|
+
Object.defineProperty(exports, "DBusSignedValue", { enumerable: true, get: function () { return dbus_sdk_1.DBusSignedValue; } });
|
|
17
|
+
Object.defineProperty(exports, "Signature", { enumerable: true, get: function () { return dbus_sdk_1.Signature; } });
|
|
18
|
+
Object.defineProperty(exports, "DBusMessageEndianness", { enumerable: true, get: function () { return dbus_sdk_1.DBusMessageEndianness; } });
|
|
19
|
+
Object.defineProperty(exports, "DBusMessageFlags", { enumerable: true, get: function () { return dbus_sdk_1.DBusMessageFlags; } });
|
|
20
|
+
Object.defineProperty(exports, "DBusMessageType", { enumerable: true, get: function () { return dbus_sdk_1.DBusMessageType; } });
|
|
21
|
+
Object.defineProperty(exports, "DBusPropertyAccess", { enumerable: true, get: function () { return dbus_sdk_1.DBusPropertyAccess; } });
|
|
22
|
+
Object.defineProperty(exports, "RequestNameFlags", { enumerable: true, get: function () { return dbus_sdk_1.RequestNameFlags; } });
|
|
23
|
+
Object.defineProperty(exports, "RequestNameResultCode", { enumerable: true, get: function () { return dbus_sdk_1.RequestNameResultCode; } });
|
|
24
|
+
Object.defineProperty(exports, "DBusArray", { enumerable: true, get: function () { return dbus_sdk_1.DBusArray; } });
|
|
25
|
+
Object.defineProperty(exports, "DBusBoolean", { enumerable: true, get: function () { return dbus_sdk_1.DBusBoolean; } });
|
|
26
|
+
Object.defineProperty(exports, "DBusByte", { enumerable: true, get: function () { return dbus_sdk_1.DBusByte; } });
|
|
27
|
+
Object.defineProperty(exports, "DBusDictEntry", { enumerable: true, get: function () { return dbus_sdk_1.DBusDictEntry; } });
|
|
28
|
+
Object.defineProperty(exports, "DBusDouble", { enumerable: true, get: function () { return dbus_sdk_1.DBusDouble; } });
|
|
29
|
+
Object.defineProperty(exports, "DBusInt16", { enumerable: true, get: function () { return dbus_sdk_1.DBusInt16; } });
|
|
30
|
+
Object.defineProperty(exports, "DBusInt32", { enumerable: true, get: function () { return dbus_sdk_1.DBusInt32; } });
|
|
31
|
+
Object.defineProperty(exports, "DBusInt64", { enumerable: true, get: function () { return dbus_sdk_1.DBusInt64; } });
|
|
32
|
+
Object.defineProperty(exports, "DBusObjectPath", { enumerable: true, get: function () { return dbus_sdk_1.DBusObjectPath; } });
|
|
33
|
+
Object.defineProperty(exports, "DBusSignature", { enumerable: true, get: function () { return dbus_sdk_1.DBusSignature; } });
|
|
34
|
+
Object.defineProperty(exports, "DBusString", { enumerable: true, get: function () { return dbus_sdk_1.DBusString; } });
|
|
35
|
+
Object.defineProperty(exports, "DBusStruct", { enumerable: true, get: function () { return dbus_sdk_1.DBusStruct; } });
|
|
36
|
+
Object.defineProperty(exports, "DBusUint16", { enumerable: true, get: function () { return dbus_sdk_1.DBusUint16; } });
|
|
37
|
+
Object.defineProperty(exports, "DBusUint32", { enumerable: true, get: function () { return dbus_sdk_1.DBusUint32; } });
|
|
38
|
+
Object.defineProperty(exports, "DBusUint64", { enumerable: true, get: function () { return dbus_sdk_1.DBusUint64; } });
|
|
39
|
+
Object.defineProperty(exports, "DBusUnixFD", { enumerable: true, get: function () { return dbus_sdk_1.DBusUnixFD; } });
|
|
40
|
+
Object.defineProperty(exports, "DBusVariant", { enumerable: true, get: function () { return dbus_sdk_1.DBusVariant; } });
|
|
41
|
+
Object.defineProperty(exports, "IntrospectableInterface", { enumerable: true, get: function () { return dbus_sdk_1.IntrospectableInterface; } });
|
|
42
|
+
Object.defineProperty(exports, "PeerInterface", { enumerable: true, get: function () { return dbus_sdk_1.PeerInterface; } });
|
|
43
|
+
Object.defineProperty(exports, "ObjectManagerInterface", { enumerable: true, get: function () { return dbus_sdk_1.ObjectManagerInterface; } });
|
|
44
|
+
Object.defineProperty(exports, "PropertiesInterface", { enumerable: true, get: function () { return dbus_sdk_1.PropertiesInterface; } });
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ComponentExports.d.ts","sourceRoot":"","sources":["../src/ComponentExports.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,mBAAmB,EAAC,MAAM,kCAAkC,CAAA"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DBusClientComponent = void 0;
|
|
4
|
+
var DBusClientComponent_1 = require("./components/DBusClientComponent");
|
|
5
|
+
Object.defineProperty(exports, "DBusClientComponent", { enumerable: true, get: function () { return DBusClientComponent_1.DBusClientComponent; } });
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProviderExports.d.ts","sourceRoot":"","sources":["../src/ProviderExports.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,kBAAkB,EAAC,MAAM,gCAAgC,CAAA"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DBusClientProvider = void 0;
|
|
4
|
+
var DBusClientProvider_1 = require("./providers/DBusClientProvider");
|
|
5
|
+
Object.defineProperty(exports, "DBusClientProvider", { enumerable: true, get: function () { return DBusClientProvider_1.DBusClientProvider; } });
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import { BusNameBasicInfo, DBus, DBusInterface, DBusMessage, DBusObject, DBusService, DBusSignalEmitter, InvokeOpts, ServiceBasicInfo } from 'dbus-sdk';
|
|
2
|
+
import { Component, ProviderOptionsBuilder } from 'lakutata';
|
|
3
|
+
import { DBusClientOptions } from '../interfaces/DBusClientOptions';
|
|
4
|
+
export declare const buildDBusClientOptions: ProviderOptionsBuilder<DBusClientOptions>;
|
|
5
|
+
export declare class DBusClientComponent extends Component {
|
|
6
|
+
protected readonly busAddress: string;
|
|
7
|
+
protected readonly timeout: number;
|
|
8
|
+
protected readonly advancedResponse: boolean;
|
|
9
|
+
protected readonly convertBigIntToNumber: boolean;
|
|
10
|
+
protected dbus: DBus;
|
|
11
|
+
get uniqueName(): string;
|
|
12
|
+
/**
|
|
13
|
+
* Initializer
|
|
14
|
+
* @protected
|
|
15
|
+
*/
|
|
16
|
+
protected init(): Promise<void>;
|
|
17
|
+
/**
|
|
18
|
+
* Destroyer
|
|
19
|
+
* @protected
|
|
20
|
+
*/
|
|
21
|
+
protected destroy(): Promise<void>;
|
|
22
|
+
invoke(opts: InvokeOpts, noReply: true): void;
|
|
23
|
+
invoke(opts: InvokeOpts, noReply: false): Promise<any[]>;
|
|
24
|
+
invoke(opts: InvokeOpts): Promise<any[]>;
|
|
25
|
+
on(eventName: 'online', listener: (name: string) => void): this;
|
|
26
|
+
on(eventName: 'offline', listener: (name: string) => void): this;
|
|
27
|
+
on(eventName: 'replaced', listener: (name: string) => void): this;
|
|
28
|
+
on(eventName: 'methodCall', listener: (message: DBusMessage) => void): this;
|
|
29
|
+
on(eventName: 'NameOwnerChanged', listener: (name: string, oldOwner: string, newOwner: string) => void): this;
|
|
30
|
+
on(eventName: 'NameLost', listener: (name: string) => void): this;
|
|
31
|
+
on(eventName: 'NameAcquired', listener: (name: string) => void): this;
|
|
32
|
+
on(eventName: 'connectionClose', listener: () => void): this;
|
|
33
|
+
on(eventName: 'connectionError', listener: (error: Error) => void): this;
|
|
34
|
+
once(eventName: 'online', listener: (name: string) => void): this;
|
|
35
|
+
once(eventName: 'offline', listener: (name: string) => void): this;
|
|
36
|
+
once(eventName: 'replaced', listener: (name: string) => void): this;
|
|
37
|
+
once(eventName: 'methodCall', listener: (message: DBusMessage) => void): this;
|
|
38
|
+
once(eventName: 'NameOwnerChanged', listener: (name: string, oldOwner: string, newOwner: string) => void): this;
|
|
39
|
+
once(eventName: 'NameLost', listener: (name: string) => void): this;
|
|
40
|
+
once(eventName: 'NameAcquired', listener: (name: string) => void): this;
|
|
41
|
+
once(eventName: 'connectionClose', listener: () => void): this;
|
|
42
|
+
once(eventName: 'connectionError', listener: (error: Error) => void): this;
|
|
43
|
+
off(eventName: 'online', listener: (name: string) => void): this;
|
|
44
|
+
off(eventName: 'offline', listener: (name: string) => void): this;
|
|
45
|
+
off(eventName: 'replaced', listener: (name: string) => void): this;
|
|
46
|
+
off(eventName: 'methodCall', listener: (message: DBusMessage) => void): this;
|
|
47
|
+
off(eventName: 'NameOwnerChanged', listener: (name: string, oldOwner: string, newOwner: string) => void): this;
|
|
48
|
+
off(eventName: 'NameLost', listener: (name: string) => void): this;
|
|
49
|
+
off(eventName: 'NameAcquired', listener: (name: string) => void): this;
|
|
50
|
+
off(eventName: 'connectionClose', listener: () => void): this;
|
|
51
|
+
off(eventName: 'connectionError', listener: (error: Error) => void): this;
|
|
52
|
+
removeListener(eventName: 'online', listener: (name: string) => void): this;
|
|
53
|
+
removeListener(eventName: 'offline', listener: (name: string) => void): this;
|
|
54
|
+
removeListener(eventName: 'replaced', listener: (name: string) => void): this;
|
|
55
|
+
removeListener(eventName: 'methodCall', listener: (message: DBusMessage) => void): this;
|
|
56
|
+
removeListener(eventName: 'NameOwnerChanged', listener: (name: string, oldOwner: string, newOwner: string) => void): this;
|
|
57
|
+
removeListener(eventName: 'NameLost', listener: (name: string) => void): this;
|
|
58
|
+
removeListener(eventName: 'NameAcquired', listener: (name: string) => void): this;
|
|
59
|
+
removeListener(eventName: 'connectionClose', listener: () => void): this;
|
|
60
|
+
removeListener(eventName: 'connectionError', listener: (error: Error) => void): this;
|
|
61
|
+
addMatch(rule: string): void;
|
|
62
|
+
removeMatch(rule: string): void;
|
|
63
|
+
getNameOwner(name: string): Promise<string | undefined>;
|
|
64
|
+
listActivatableNames(): Promise<string[]>;
|
|
65
|
+
listNames(): Promise<string[]>;
|
|
66
|
+
nameHasOwner(name: string): Promise<boolean>;
|
|
67
|
+
listBusNames(): Promise<BusNameBasicInfo[]>;
|
|
68
|
+
listServices(): Promise<ServiceBasicInfo[]>;
|
|
69
|
+
services(): Promise<DBusService[]>;
|
|
70
|
+
service(service: string): Promise<DBusService>;
|
|
71
|
+
object(service: string, objectPath: string): Promise<DBusObject>;
|
|
72
|
+
interface(service: string, objectPath: string, iface: string): Promise<DBusInterface>;
|
|
73
|
+
interfaceSignal(service: string, objectPath: string, iface: string): Promise<DBusSignalEmitter>;
|
|
74
|
+
}
|
|
75
|
+
//# sourceMappingURL=DBusClientComponent.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DBusClientComponent.d.ts","sourceRoot":"","sources":["../../src/components/DBusClientComponent.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,gBAAgB,EAChB,IAAI,EACJ,aAAa,EACb,WAAW,EACX,UAAU,EACV,WAAW,EACX,iBAAiB,EACjB,UAAU,EACV,gBAAgB,EACnB,MAAM,UAAU,CAAA;AACjB,OAAO,EAAC,SAAS,EAAwB,sBAAsB,EAAC,MAAM,UAAU,CAAA;AAChF,OAAO,EAAC,iBAAiB,EAAC,MAAM,iCAAiC,CAAA;AAGjE,eAAO,MAAM,sBAAsB,EAAE,sBAAsB,CAAC,iBAAiB,CAM3E,CAAA;AAEF,qBAAa,mBAAoB,SAAQ,SAAS;IAG9C,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAGrC,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IAGlC,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAA;IAG5C,SAAS,CAAC,QAAQ,CAAC,qBAAqB,EAAE,OAAO,CAAA;IAEjD,SAAS,CAAC,IAAI,EAAE,IAAI,CAAA;IAEpB,IAAW,UAAU,IAAI,MAAM,CAE9B;IAED;;;OAGG;cACa,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IASrC;;;OAGG;cACa,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAIjC,MAAM,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,IAAI,GAAG,IAAI;IACvC,MAAM,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IACxD,MAAM,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAM9C,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAC/D,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAChE,EAAE,CAAC,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IACjE,EAAE,CAAC,SAAS,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,IAAI,GAAG,IAAI;IAC3E,EAAE,CAAC,SAAS,EAAE,kBAAkB,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAC7G,EAAE,CAAC,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IACjE,EAAE,CAAC,SAAS,EAAE,cAAc,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IACrE,EAAE,CAAC,SAAS,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI;IAC5D,EAAE,CAAC,SAAS,EAAE,iBAAiB,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,IAAI;IAMxE,IAAI,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IACjE,IAAI,CAAC,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAClE,IAAI,CAAC,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IACnE,IAAI,CAAC,SAAS,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,IAAI,GAAG,IAAI;IAC7E,IAAI,CAAC,SAAS,EAAE,kBAAkB,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAC/G,IAAI,CAAC,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IACnE,IAAI,CAAC,SAAS,EAAE,cAAc,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IACvE,IAAI,CAAC,SAAS,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI;IAC9D,IAAI,CAAC,SAAS,EAAE,iBAAiB,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,IAAI;IAM1E,GAAG,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAChE,GAAG,CAAC,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IACjE,GAAG,CAAC,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAClE,GAAG,CAAC,SAAS,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,IAAI,GAAG,IAAI;IAC5E,GAAG,CAAC,SAAS,EAAE,kBAAkB,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAC9G,GAAG,CAAC,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAClE,GAAG,CAAC,SAAS,EAAE,cAAc,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IACtE,GAAG,CAAC,SAAS,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI;IAC7D,GAAG,CAAC,SAAS,EAAE,iBAAiB,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,IAAI;IAMzE,cAAc,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAC3E,cAAc,CAAC,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAC5E,cAAc,CAAC,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAC7E,cAAc,CAAC,SAAS,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,IAAI,GAAG,IAAI;IACvF,cAAc,CAAC,SAAS,EAAE,kBAAkB,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IACzH,cAAc,CAAC,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAC7E,cAAc,CAAC,SAAS,EAAE,cAAc,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IACjF,cAAc,CAAC,SAAS,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI;IACxE,cAAc,CAAC,SAAS,EAAE,iBAAiB,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,IAAI;IAMpF,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAI5B,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAIzB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAIvD,oBAAoB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAIzC,SAAS,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAI9B,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAI5C,YAAY,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAI3C,YAAY,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAI3C,QAAQ,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;IAIlC,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAI9C,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAIhE,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAIrF,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;CAI/G"}
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.DBusClientComponent = exports.buildDBusClientOptions = void 0;
|
|
13
|
+
const dbus_sdk_1 = require("dbus-sdk");
|
|
14
|
+
const lakutata_1 = require("lakutata");
|
|
15
|
+
const di_1 = require("lakutata/decorator/di");
|
|
16
|
+
const buildDBusClientOptions = (options) => ({
|
|
17
|
+
class: DBusClientComponent,
|
|
18
|
+
busAddress: options.busAddress,
|
|
19
|
+
timeout: options.timeout,
|
|
20
|
+
advancedResponse: options.advancedResponse,
|
|
21
|
+
convertBigIntToNumber: options.convertBigIntToNumber
|
|
22
|
+
});
|
|
23
|
+
exports.buildDBusClientOptions = buildDBusClientOptions;
|
|
24
|
+
class DBusClientComponent extends lakutata_1.Component {
|
|
25
|
+
get uniqueName() {
|
|
26
|
+
return this.dbus.uniqueName;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Initializer
|
|
30
|
+
* @protected
|
|
31
|
+
*/
|
|
32
|
+
async init() {
|
|
33
|
+
this.dbus = await dbus_sdk_1.DBus.connect({
|
|
34
|
+
busAddress: this.busAddress,
|
|
35
|
+
timeout: this.timeout,
|
|
36
|
+
advancedResponse: this.advancedResponse,
|
|
37
|
+
convertBigIntToNumber: this.convertBigIntToNumber
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Destroyer
|
|
42
|
+
* @protected
|
|
43
|
+
*/
|
|
44
|
+
async destroy() {
|
|
45
|
+
await this.dbus.disconnect();
|
|
46
|
+
}
|
|
47
|
+
invoke(opts, noReply = false) {
|
|
48
|
+
if (noReply)
|
|
49
|
+
return this.dbus.invoke(opts, true);
|
|
50
|
+
return this.dbus.invoke(opts, false);
|
|
51
|
+
}
|
|
52
|
+
on(eventName, listener) {
|
|
53
|
+
this.dbus.on(eventName, listener);
|
|
54
|
+
return this;
|
|
55
|
+
}
|
|
56
|
+
once(eventName, listener) {
|
|
57
|
+
this.dbus.once(eventName, listener);
|
|
58
|
+
return this;
|
|
59
|
+
}
|
|
60
|
+
off(eventName, listener) {
|
|
61
|
+
this.dbus.off(eventName, listener);
|
|
62
|
+
return this;
|
|
63
|
+
}
|
|
64
|
+
removeListener(eventName, listener) {
|
|
65
|
+
this.dbus.removeListener(eventName, listener);
|
|
66
|
+
return this;
|
|
67
|
+
}
|
|
68
|
+
addMatch(rule) {
|
|
69
|
+
return this.dbus.addMatch(rule);
|
|
70
|
+
}
|
|
71
|
+
removeMatch(rule) {
|
|
72
|
+
return this.dbus.removeMatch(rule);
|
|
73
|
+
}
|
|
74
|
+
async getNameOwner(name) {
|
|
75
|
+
return this.dbus.getNameOwner(name);
|
|
76
|
+
}
|
|
77
|
+
async listActivatableNames() {
|
|
78
|
+
return this.dbus.listActivatableNames();
|
|
79
|
+
}
|
|
80
|
+
async listNames() {
|
|
81
|
+
return this.dbus.listNames();
|
|
82
|
+
}
|
|
83
|
+
async nameHasOwner(name) {
|
|
84
|
+
return this.dbus.nameHasOwner(name);
|
|
85
|
+
}
|
|
86
|
+
async listBusNames() {
|
|
87
|
+
return this.dbus.listBusNames();
|
|
88
|
+
}
|
|
89
|
+
async listServices() {
|
|
90
|
+
return this.dbus.listServices();
|
|
91
|
+
}
|
|
92
|
+
async services() {
|
|
93
|
+
return this.dbus.getServices();
|
|
94
|
+
}
|
|
95
|
+
async service(service) {
|
|
96
|
+
return this.dbus.getService(service);
|
|
97
|
+
}
|
|
98
|
+
async object(service, objectPath) {
|
|
99
|
+
return this.dbus.getObject(service, objectPath);
|
|
100
|
+
}
|
|
101
|
+
async interface(service, objectPath, iface) {
|
|
102
|
+
return this.dbus.getInterface(service, objectPath, iface);
|
|
103
|
+
}
|
|
104
|
+
async interfaceSignal(service, objectPath, iface) {
|
|
105
|
+
const dbusIface = await this.dbus.getInterface(service, objectPath, iface);
|
|
106
|
+
return dbusIface.signal;
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
exports.DBusClientComponent = DBusClientComponent;
|
|
110
|
+
__decorate([
|
|
111
|
+
(0, di_1.Configurable)(lakutata_1.DTO.String().required()),
|
|
112
|
+
__metadata("design:type", String)
|
|
113
|
+
], DBusClientComponent.prototype, "busAddress", void 0);
|
|
114
|
+
__decorate([
|
|
115
|
+
(0, di_1.Configurable)(lakutata_1.DTO.Number().positive().integer().optional()),
|
|
116
|
+
__metadata("design:type", Number)
|
|
117
|
+
], DBusClientComponent.prototype, "timeout", void 0);
|
|
118
|
+
__decorate([
|
|
119
|
+
(0, di_1.Configurable)(lakutata_1.DTO.Boolean().optional().default(false)),
|
|
120
|
+
__metadata("design:type", Boolean)
|
|
121
|
+
], DBusClientComponent.prototype, "advancedResponse", void 0);
|
|
122
|
+
__decorate([
|
|
123
|
+
(0, di_1.Configurable)(lakutata_1.DTO.Boolean().optional().default(true)),
|
|
124
|
+
__metadata("design:type", Boolean)
|
|
125
|
+
], DBusClientComponent.prototype, "convertBigIntToNumber", void 0);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DBusClientOptions.d.ts","sourceRoot":"","sources":["../../src/interfaces/DBusClientOptions.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,iBAAiB;IAC9B,UAAU,EAAE,MAAM,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,qBAAqB,CAAC,EAAE,OAAO,CAAA;CAClC"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import { BusNameBasicInfo, DBus, DBusInterface, DBusMessage, DBusObject, DBusService, DBusSignalEmitter, InvokeOpts, ServiceBasicInfo } from 'dbus-sdk';
|
|
2
|
+
import { Provider, ProviderOptionsBuilder } from 'lakutata';
|
|
3
|
+
import { DBusClientOptions } from '../interfaces/DBusClientOptions';
|
|
4
|
+
export declare const buildDBusClientOptions: ProviderOptionsBuilder<DBusClientOptions>;
|
|
5
|
+
export declare class DBusClientProvider extends Provider {
|
|
6
|
+
protected readonly busAddress: string;
|
|
7
|
+
protected readonly timeout: number;
|
|
8
|
+
protected readonly advancedResponse: boolean;
|
|
9
|
+
protected readonly convertBigIntToNumber: boolean;
|
|
10
|
+
protected dbus: DBus;
|
|
11
|
+
get uniqueName(): string;
|
|
12
|
+
/**
|
|
13
|
+
* Initializer
|
|
14
|
+
* @protected
|
|
15
|
+
*/
|
|
16
|
+
protected init(): Promise<void>;
|
|
17
|
+
/**
|
|
18
|
+
* Destroyer
|
|
19
|
+
* @protected
|
|
20
|
+
*/
|
|
21
|
+
protected destroy(): Promise<void>;
|
|
22
|
+
invoke(opts: InvokeOpts, noReply: true): void;
|
|
23
|
+
invoke(opts: InvokeOpts, noReply: false): Promise<any[]>;
|
|
24
|
+
invoke(opts: InvokeOpts): Promise<any[]>;
|
|
25
|
+
on(eventName: 'online', listener: (name: string) => void): this;
|
|
26
|
+
on(eventName: 'offline', listener: (name: string) => void): this;
|
|
27
|
+
on(eventName: 'replaced', listener: (name: string) => void): this;
|
|
28
|
+
on(eventName: 'methodCall', listener: (message: DBusMessage) => void): this;
|
|
29
|
+
on(eventName: 'NameOwnerChanged', listener: (name: string, oldOwner: string, newOwner: string) => void): this;
|
|
30
|
+
on(eventName: 'NameLost', listener: (name: string) => void): this;
|
|
31
|
+
on(eventName: 'NameAcquired', listener: (name: string) => void): this;
|
|
32
|
+
on(eventName: 'connectionClose', listener: () => void): this;
|
|
33
|
+
on(eventName: 'connectionError', listener: (error: Error) => void): this;
|
|
34
|
+
once(eventName: 'online', listener: (name: string) => void): this;
|
|
35
|
+
once(eventName: 'offline', listener: (name: string) => void): this;
|
|
36
|
+
once(eventName: 'replaced', listener: (name: string) => void): this;
|
|
37
|
+
once(eventName: 'methodCall', listener: (message: DBusMessage) => void): this;
|
|
38
|
+
once(eventName: 'NameOwnerChanged', listener: (name: string, oldOwner: string, newOwner: string) => void): this;
|
|
39
|
+
once(eventName: 'NameLost', listener: (name: string) => void): this;
|
|
40
|
+
once(eventName: 'NameAcquired', listener: (name: string) => void): this;
|
|
41
|
+
once(eventName: 'connectionClose', listener: () => void): this;
|
|
42
|
+
once(eventName: 'connectionError', listener: (error: Error) => void): this;
|
|
43
|
+
off(eventName: 'online', listener: (name: string) => void): this;
|
|
44
|
+
off(eventName: 'offline', listener: (name: string) => void): this;
|
|
45
|
+
off(eventName: 'replaced', listener: (name: string) => void): this;
|
|
46
|
+
off(eventName: 'methodCall', listener: (message: DBusMessage) => void): this;
|
|
47
|
+
off(eventName: 'NameOwnerChanged', listener: (name: string, oldOwner: string, newOwner: string) => void): this;
|
|
48
|
+
off(eventName: 'NameLost', listener: (name: string) => void): this;
|
|
49
|
+
off(eventName: 'NameAcquired', listener: (name: string) => void): this;
|
|
50
|
+
off(eventName: 'connectionClose', listener: () => void): this;
|
|
51
|
+
off(eventName: 'connectionError', listener: (error: Error) => void): this;
|
|
52
|
+
removeListener(eventName: 'online', listener: (name: string) => void): this;
|
|
53
|
+
removeListener(eventName: 'offline', listener: (name: string) => void): this;
|
|
54
|
+
removeListener(eventName: 'replaced', listener: (name: string) => void): this;
|
|
55
|
+
removeListener(eventName: 'methodCall', listener: (message: DBusMessage) => void): this;
|
|
56
|
+
removeListener(eventName: 'NameOwnerChanged', listener: (name: string, oldOwner: string, newOwner: string) => void): this;
|
|
57
|
+
removeListener(eventName: 'NameLost', listener: (name: string) => void): this;
|
|
58
|
+
removeListener(eventName: 'NameAcquired', listener: (name: string) => void): this;
|
|
59
|
+
removeListener(eventName: 'connectionClose', listener: () => void): this;
|
|
60
|
+
removeListener(eventName: 'connectionError', listener: (error: Error) => void): this;
|
|
61
|
+
addMatch(rule: string): void;
|
|
62
|
+
removeMatch(rule: string): void;
|
|
63
|
+
getNameOwner(name: string): Promise<string | undefined>;
|
|
64
|
+
listActivatableNames(): Promise<string[]>;
|
|
65
|
+
listNames(): Promise<string[]>;
|
|
66
|
+
nameHasOwner(name: string): Promise<boolean>;
|
|
67
|
+
listBusNames(): Promise<BusNameBasicInfo[]>;
|
|
68
|
+
listServices(): Promise<ServiceBasicInfo[]>;
|
|
69
|
+
services(): Promise<DBusService[]>;
|
|
70
|
+
service(service: string): Promise<DBusService>;
|
|
71
|
+
object(service: string, objectPath: string): Promise<DBusObject>;
|
|
72
|
+
interface(service: string, objectPath: string, iface: string): Promise<DBusInterface>;
|
|
73
|
+
interfaceSignal(service: string, objectPath: string, iface: string): Promise<DBusSignalEmitter>;
|
|
74
|
+
}
|
|
75
|
+
//# sourceMappingURL=DBusClientProvider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DBusClientProvider.d.ts","sourceRoot":"","sources":["../../src/providers/DBusClientProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,gBAAgB,EAChB,IAAI,EACJ,aAAa,EACb,WAAW,EACX,UAAU,EACV,WAAW,EACX,iBAAiB,EACjB,UAAU,EACV,gBAAgB,EACnB,MAAM,UAAU,CAAA;AACjB,OAAO,EAAM,QAAQ,EAAmB,sBAAsB,EAAC,MAAM,UAAU,CAAA;AAC/E,OAAO,EAAC,iBAAiB,EAAC,MAAM,iCAAiC,CAAA;AAGjE,eAAO,MAAM,sBAAsB,EAAE,sBAAsB,CAAC,iBAAiB,CAM3E,CAAA;AAEF,qBAAa,kBAAmB,SAAQ,QAAQ;IAG5C,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAGrC,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IAGlC,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAA;IAG5C,SAAS,CAAC,QAAQ,CAAC,qBAAqB,EAAE,OAAO,CAAA;IAEjD,SAAS,CAAC,IAAI,EAAE,IAAI,CAAA;IAEpB,IAAW,UAAU,IAAI,MAAM,CAE9B;IAED;;;OAGG;cACa,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IASrC;;;OAGG;cACa,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAIjC,MAAM,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,IAAI,GAAG,IAAI;IACvC,MAAM,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IACxD,MAAM,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAM9C,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAC/D,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAChE,EAAE,CAAC,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IACjE,EAAE,CAAC,SAAS,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,IAAI,GAAG,IAAI;IAC3E,EAAE,CAAC,SAAS,EAAE,kBAAkB,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAC7G,EAAE,CAAC,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IACjE,EAAE,CAAC,SAAS,EAAE,cAAc,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IACrE,EAAE,CAAC,SAAS,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI;IAC5D,EAAE,CAAC,SAAS,EAAE,iBAAiB,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,IAAI;IAMxE,IAAI,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IACjE,IAAI,CAAC,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAClE,IAAI,CAAC,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IACnE,IAAI,CAAC,SAAS,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,IAAI,GAAG,IAAI;IAC7E,IAAI,CAAC,SAAS,EAAE,kBAAkB,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAC/G,IAAI,CAAC,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IACnE,IAAI,CAAC,SAAS,EAAE,cAAc,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IACvE,IAAI,CAAC,SAAS,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI;IAC9D,IAAI,CAAC,SAAS,EAAE,iBAAiB,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,IAAI;IAM1E,GAAG,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAChE,GAAG,CAAC,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IACjE,GAAG,CAAC,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAClE,GAAG,CAAC,SAAS,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,IAAI,GAAG,IAAI;IAC5E,GAAG,CAAC,SAAS,EAAE,kBAAkB,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAC9G,GAAG,CAAC,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAClE,GAAG,CAAC,SAAS,EAAE,cAAc,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IACtE,GAAG,CAAC,SAAS,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI;IAC7D,GAAG,CAAC,SAAS,EAAE,iBAAiB,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,IAAI;IAMzE,cAAc,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAC3E,cAAc,CAAC,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAC5E,cAAc,CAAC,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAC7E,cAAc,CAAC,SAAS,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,IAAI,GAAG,IAAI;IACvF,cAAc,CAAC,SAAS,EAAE,kBAAkB,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IACzH,cAAc,CAAC,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAC7E,cAAc,CAAC,SAAS,EAAE,cAAc,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IACjF,cAAc,CAAC,SAAS,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI;IACxE,cAAc,CAAC,SAAS,EAAE,iBAAiB,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,IAAI;IAMpF,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAI5B,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAIzB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAIvD,oBAAoB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAIzC,SAAS,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAI9B,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAI5C,YAAY,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAI3C,YAAY,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAI3C,QAAQ,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;IAIlC,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAI9C,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAIhE,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAIrF,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;CAI/G"}
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.DBusClientProvider = exports.buildDBusClientOptions = void 0;
|
|
13
|
+
const dbus_sdk_1 = require("dbus-sdk");
|
|
14
|
+
const lakutata_1 = require("lakutata");
|
|
15
|
+
const di_1 = require("lakutata/decorator/di");
|
|
16
|
+
const buildDBusClientOptions = (options) => ({
|
|
17
|
+
class: DBusClientProvider,
|
|
18
|
+
busAddress: options.busAddress,
|
|
19
|
+
timeout: options.timeout,
|
|
20
|
+
advancedResponse: options.advancedResponse,
|
|
21
|
+
convertBigIntToNumber: options.convertBigIntToNumber
|
|
22
|
+
});
|
|
23
|
+
exports.buildDBusClientOptions = buildDBusClientOptions;
|
|
24
|
+
class DBusClientProvider extends lakutata_1.Provider {
|
|
25
|
+
get uniqueName() {
|
|
26
|
+
return this.dbus.uniqueName;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Initializer
|
|
30
|
+
* @protected
|
|
31
|
+
*/
|
|
32
|
+
async init() {
|
|
33
|
+
this.dbus = await dbus_sdk_1.DBus.connect({
|
|
34
|
+
busAddress: this.busAddress,
|
|
35
|
+
timeout: this.timeout,
|
|
36
|
+
advancedResponse: this.advancedResponse,
|
|
37
|
+
convertBigIntToNumber: this.convertBigIntToNumber
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Destroyer
|
|
42
|
+
* @protected
|
|
43
|
+
*/
|
|
44
|
+
async destroy() {
|
|
45
|
+
await this.dbus.disconnect();
|
|
46
|
+
}
|
|
47
|
+
invoke(opts, noReply = false) {
|
|
48
|
+
if (noReply)
|
|
49
|
+
return this.dbus.invoke(opts, true);
|
|
50
|
+
return this.dbus.invoke(opts, false);
|
|
51
|
+
}
|
|
52
|
+
on(eventName, listener) {
|
|
53
|
+
this.dbus.on(eventName, listener);
|
|
54
|
+
return this;
|
|
55
|
+
}
|
|
56
|
+
once(eventName, listener) {
|
|
57
|
+
this.dbus.once(eventName, listener);
|
|
58
|
+
return this;
|
|
59
|
+
}
|
|
60
|
+
off(eventName, listener) {
|
|
61
|
+
this.dbus.off(eventName, listener);
|
|
62
|
+
return this;
|
|
63
|
+
}
|
|
64
|
+
removeListener(eventName, listener) {
|
|
65
|
+
this.dbus.removeListener(eventName, listener);
|
|
66
|
+
return this;
|
|
67
|
+
}
|
|
68
|
+
addMatch(rule) {
|
|
69
|
+
return this.dbus.addMatch(rule);
|
|
70
|
+
}
|
|
71
|
+
removeMatch(rule) {
|
|
72
|
+
return this.dbus.removeMatch(rule);
|
|
73
|
+
}
|
|
74
|
+
async getNameOwner(name) {
|
|
75
|
+
return this.dbus.getNameOwner(name);
|
|
76
|
+
}
|
|
77
|
+
async listActivatableNames() {
|
|
78
|
+
return this.dbus.listActivatableNames();
|
|
79
|
+
}
|
|
80
|
+
async listNames() {
|
|
81
|
+
return this.dbus.listNames();
|
|
82
|
+
}
|
|
83
|
+
async nameHasOwner(name) {
|
|
84
|
+
return this.dbus.nameHasOwner(name);
|
|
85
|
+
}
|
|
86
|
+
async listBusNames() {
|
|
87
|
+
return this.dbus.listBusNames();
|
|
88
|
+
}
|
|
89
|
+
async listServices() {
|
|
90
|
+
return this.dbus.listServices();
|
|
91
|
+
}
|
|
92
|
+
async services() {
|
|
93
|
+
return this.dbus.getServices();
|
|
94
|
+
}
|
|
95
|
+
async service(service) {
|
|
96
|
+
return this.dbus.getService(service);
|
|
97
|
+
}
|
|
98
|
+
async object(service, objectPath) {
|
|
99
|
+
return this.dbus.getObject(service, objectPath);
|
|
100
|
+
}
|
|
101
|
+
async interface(service, objectPath, iface) {
|
|
102
|
+
return this.dbus.getInterface(service, objectPath, iface);
|
|
103
|
+
}
|
|
104
|
+
async interfaceSignal(service, objectPath, iface) {
|
|
105
|
+
const dbusIface = await this.dbus.getInterface(service, objectPath, iface);
|
|
106
|
+
return dbusIface.signal;
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
exports.DBusClientProvider = DBusClientProvider;
|
|
110
|
+
__decorate([
|
|
111
|
+
(0, di_1.Configurable)(lakutata_1.DTO.String().required()),
|
|
112
|
+
__metadata("design:type", String)
|
|
113
|
+
], DBusClientProvider.prototype, "busAddress", void 0);
|
|
114
|
+
__decorate([
|
|
115
|
+
(0, di_1.Configurable)(lakutata_1.DTO.Number().positive().integer().optional()),
|
|
116
|
+
__metadata("design:type", Number)
|
|
117
|
+
], DBusClientProvider.prototype, "timeout", void 0);
|
|
118
|
+
__decorate([
|
|
119
|
+
(0, di_1.Configurable)(lakutata_1.DTO.Boolean().optional().default(false)),
|
|
120
|
+
__metadata("design:type", Boolean)
|
|
121
|
+
], DBusClientProvider.prototype, "advancedResponse", void 0);
|
|
122
|
+
__decorate([
|
|
123
|
+
(0, di_1.Configurable)(lakutata_1.DTO.Boolean().optional().default(true)),
|
|
124
|
+
__metadata("design:type", Boolean)
|
|
125
|
+
], DBusClientProvider.prototype, "convertBigIntToNumber", void 0);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DBusTest.spec.d.ts","sourceRoot":"","sources":["../../src/tests/DBusTest.spec.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const lakutata_1 = require("lakutata");
|
|
4
|
+
const helper_1 = require("lakutata/helper");
|
|
5
|
+
const DBusClientProvider_1 = require("../providers/DBusClientProvider");
|
|
6
|
+
const Test_1 = require("./Test");
|
|
7
|
+
lakutata_1.Application.run({
|
|
8
|
+
id: 'dbus.test',
|
|
9
|
+
name: 'DBusTest',
|
|
10
|
+
providers: {
|
|
11
|
+
client: (0, DBusClientProvider_1.buildDBusClientOptions)({
|
|
12
|
+
busAddress: 'tcp:host=192.168.1.127,port=44444'
|
|
13
|
+
})
|
|
14
|
+
},
|
|
15
|
+
components: {
|
|
16
|
+
test: {
|
|
17
|
+
class: Test_1.Test
|
|
18
|
+
}
|
|
19
|
+
},
|
|
20
|
+
bootstrap: [
|
|
21
|
+
'test'
|
|
22
|
+
]
|
|
23
|
+
})
|
|
24
|
+
.onLaunched((app, logger) => logger.info('The application %s has successfully started in %s mode.', app.appName, app.mode()))
|
|
25
|
+
.onFatalException((error, logger) => logger.error('A fatal error occurred in the program: %s', error.message))
|
|
26
|
+
.onUncaughtException((error, logger) => error.code === 'EPIPE' ? (0, helper_1.DevNull)(error) : logger.error('UncaughtError occurred: %s', error.message));
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Component } from 'lakutata';
|
|
2
|
+
import { DBusClientProvider } from '../providers/DBusClientProvider';
|
|
3
|
+
import { DBusSignalEmitter } from 'dbus-sdk';
|
|
4
|
+
export declare class Test extends Component {
|
|
5
|
+
protected readonly dbus: DBusClientProvider;
|
|
6
|
+
protected readonly padServPropSignal: DBusSignalEmitter;
|
|
7
|
+
protected init(): Promise<void>;
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=Test.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Test.d.ts","sourceRoot":"","sources":["../../src/tests/Test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAC,MAAM,UAAU,CAAA;AAGlC,OAAO,EAAC,kBAAkB,EAAC,MAAM,iCAAiC,CAAA;AAClE,OAAO,EAAC,iBAAiB,EAAC,MAAM,UAAU,CAAA;AAE1C,qBAAa,IAAK,SAAQ,SAAS;IAG/B,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,kBAAkB,CAAA;IAI3C,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAA;cAIvC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAwBxC"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
19
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
20
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
21
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
22
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
23
|
+
};
|
|
24
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
25
|
+
if (mod && mod.__esModule) return mod;
|
|
26
|
+
var result = {};
|
|
27
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
28
|
+
__setModuleDefault(result, mod);
|
|
29
|
+
return result;
|
|
30
|
+
};
|
|
31
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
32
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
33
|
+
};
|
|
34
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
35
|
+
exports.Test = void 0;
|
|
36
|
+
const lakutata_1 = require("lakutata");
|
|
37
|
+
const console = __importStar(require("node:console"));
|
|
38
|
+
const di_1 = require("lakutata/decorator/di");
|
|
39
|
+
const DBusClientProvider_1 = require("../providers/DBusClientProvider");
|
|
40
|
+
const dbus_sdk_1 = require("dbus-sdk");
|
|
41
|
+
class Test extends lakutata_1.Component {
|
|
42
|
+
// protected readonly client: DBusService
|
|
43
|
+
async init() {
|
|
44
|
+
const serv = await this.dbus.service('org.ptswitch.pad');
|
|
45
|
+
const obj = await serv.getObject('/slot1/port1/stc');
|
|
46
|
+
const iface = await obj.getInterface('pad.stc');
|
|
47
|
+
// iface.method.xxx()
|
|
48
|
+
console.log(JSON.stringify(iface.listMethods(), null, 2));
|
|
49
|
+
// const obj=await this.client.getObject('/')
|
|
50
|
+
// const inf=await obj.getInterface('org.freedesktop.DBus.Properties')
|
|
51
|
+
this.padServPropSignal.on('PropertiesChanged', async (a, b, c) => {
|
|
52
|
+
const serv = await this.dbus.service('org.ptswitch.pad');
|
|
53
|
+
console.log(await serv.listObjects());
|
|
54
|
+
});
|
|
55
|
+
console.log('hello!!!');
|
|
56
|
+
// console.log(this.client)
|
|
57
|
+
// setInterval(async () => {
|
|
58
|
+
// try {
|
|
59
|
+
// const objs = await this.client.getObjects()
|
|
60
|
+
// console.log(objs.map(obj => obj.name))
|
|
61
|
+
// } catch (e: any) {
|
|
62
|
+
// console.warn(e.message)
|
|
63
|
+
// }
|
|
64
|
+
// }, 1000)
|
|
65
|
+
// this.dbus.on('')
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
exports.Test = Test;
|
|
69
|
+
__decorate([
|
|
70
|
+
(0, di_1.Inject)('client'),
|
|
71
|
+
__metadata("design:type", DBusClientProvider_1.DBusClientProvider)
|
|
72
|
+
], Test.prototype, "dbus", void 0);
|
|
73
|
+
__decorate([
|
|
74
|
+
(0, di_1.Inject)('client', async (dbusClient) => (await dbusClient.interface('org.ptswitch.pad', '/', 'org.freedesktop.DBus.Properties')).signal)
|
|
75
|
+
// @Inject('client',async (dbusClient:DBusClient)=>dbusClient.uniqueName)
|
|
76
|
+
,
|
|
77
|
+
__metadata("design:type", dbus_sdk_1.DBusSignalEmitter
|
|
78
|
+
// protected readonly client: DBusService
|
|
79
|
+
)
|
|
80
|
+
], Test.prototype, "padServPropSignal", void 0);
|
package/package.json
ADDED
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@lakutata/dbus",
|
|
3
|
+
"version": "2.1.0",
|
|
4
|
+
"description": "Lakutata DBus SDK",
|
|
5
|
+
"keywords": [
|
|
6
|
+
"lakutata",
|
|
7
|
+
"dbus",
|
|
8
|
+
"sdk"
|
|
9
|
+
],
|
|
10
|
+
"author": "myq1991 <myq1991@gmail.com>",
|
|
11
|
+
"homepage": "https://github.com/lakutata/lakutata-packages",
|
|
12
|
+
"license": "MIT",
|
|
13
|
+
"exports": {
|
|
14
|
+
".": {
|
|
15
|
+
"types": "./dist/CommonExports.d.ts",
|
|
16
|
+
"require": "./dist/CommonExports.js"
|
|
17
|
+
},
|
|
18
|
+
"./com": {
|
|
19
|
+
"types": "./dist/ComponentExports.d.ts",
|
|
20
|
+
"require": "./dist/ComponentExports.js"
|
|
21
|
+
},
|
|
22
|
+
"./provider": {
|
|
23
|
+
"types": "./dist/ProviderExports.d.ts",
|
|
24
|
+
"require": "./dist/ProviderExports.js"
|
|
25
|
+
}
|
|
26
|
+
},
|
|
27
|
+
"publishConfig": {
|
|
28
|
+
"access": "public"
|
|
29
|
+
},
|
|
30
|
+
"repository": {
|
|
31
|
+
"type": "git",
|
|
32
|
+
"url": "git+https://github.com/lakutata/lakutata-packages.git"
|
|
33
|
+
},
|
|
34
|
+
"scripts": {
|
|
35
|
+
"clean": "shx rm -rf ./dist",
|
|
36
|
+
"build": "tsc",
|
|
37
|
+
"rebuild": "npm run clean && npm run build",
|
|
38
|
+
"test": "bun src/tests/DBusTest.spec.ts"
|
|
39
|
+
},
|
|
40
|
+
"bugs": {
|
|
41
|
+
"url": "https://github.com/lakutata/lakutata-packages/issues"
|
|
42
|
+
},
|
|
43
|
+
"dependencies": {
|
|
44
|
+
"dbus-sdk": "^1.0.13",
|
|
45
|
+
"lakutata": "^2.0.53"
|
|
46
|
+
},
|
|
47
|
+
"devDependencies": {
|
|
48
|
+
"@types/degit": "^2.8.6"
|
|
49
|
+
},
|
|
50
|
+
"gitHead": "4ab1f85513872334dd45de0fdeff71cf0d58fe36"
|
|
51
|
+
}
|