description: > An example interface originally described as part of the announcement of new sd-bus interfaces at: http://0pointer.net/blog/the-new-sd-bus-api-of-systemd.html methods: - name: Multiply description: > Multiplies two integers 'x' and 'y' and returns the result. parameters: - name: x type: int64 description: > The first integer to multiply. - name: y type: int64 description: > The second integer to multiply. default: 1 returns: - name: z type: int64 description: > The result of (x*y). - name: Divide description: > Divides two integers 'x' and 'y' and returns the result. parameters: - name: x type: int64 description: > The first integer to divide. - name: y type: int64 description: > The second integer to divide. default: 1 returns: - name: z type: int64 description: > The result of (x/y). errors: - self.Error.DivisionByZero - name: Clear flags: - unprivileged - no_reply description: > Reset the LastResult property to zero. properties: - name: LastResult type: int64 default: 0 description: > The result of the most recent calculation. - name: Status type: enum[self.State] default: Success flags: - const description: > The current state of the Calculator. - name: Owner type: string description: > The name of the owner of the Calculator. errors: - self.Error.PermissionDenied signals: - name: Cleared description: > Signal indicating the LastReset property has been set to zero by the 'Clear' method. properties: - type: int64 description: > Value of LastReset prior to Clear. enumerations: - name: State description: > Identifies if the service has encountered an error or not. values: - name: Success description: > No error has been encountered. - name: Error description: > The service has encountered an error.