EnglishFrenchSpanish

OnWorks favicon

jsonrpcstub - Online in the Cloud

Run jsonrpcstub in OnWorks free hosting provider over Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator

This is the command jsonrpcstub that can be run in the OnWorks free hosting provider using one of our multiple free online workstations such as Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator

PROGRAM:

NAME


jsonrpcstub - genearate stubs for the libjson-rpc-cpp framework.

SYNOPSIS


jsonrpcstub specfile.json [--cpp-server=namespace::ClassName]
[--cpp-server-file=classqname.h] [--cpp-client=namespace::ClassName] [--cpp-client-
file=classname.h] [--js-client=ClassName] [--js-client-file=classname.js] [-h] [-v]
[--version]

DESCRIPTION


jsonrpcstub is a tool to generate C++ and JavaScript classes from a procedure
specification file.

SPECIFICATION SYNTAX
The specifictaion file is a JSON file containing all available JSON-RPC methods and
notifications with their corresponding parameters and return values contained in a
top-level JSON array.

[
{
"name": "method_with_positional_params",
"params": [3,4],
"returns": 7
},
{
"name": "method_with_named_params",
"params": {"param1": 3, "param2": 4},
"returns": 7
},
{
"name": "notification_without_parmas"
}
]

The literal in each "params" and "returns" section defines the corresponding type. If
the "params" contains an array, the parameters are accepted by position, if it contains an
object, they are accepted by name.

OPTIONS


-h Print usage information.

-v Print verbose information during generation.

--version
Print version info and exit.

--cpp-server=ClassName
Creates a Abstract Server class. Namespaces can be provided using the :: notation
(e.g. ns1::ns2::Classname).

--cpp-server-file=filename.h
Defines the filename to use when generating the C++ Abstract Server class. If this
is not provided, the lowercase classname is used.

--cpp-client=ClassName
Creates a C++ client class. Namespaces can be provided using the :: notation (e.g.
ns1::ns2::Classname).

--cpp-client-file=filename.h
Defines the filename to use when generating the C++ client class. If this is not
provided, the lowercase classname is used.

--js-client=ClassName
Creates a JavaScript client class. No namespaces are supported in this option.

--js-client-file=filename.js
Defines the filename to use when generating the JavaScrip client class.

EXAMPLES


Generate C++ Stubs for Server and Client, the classes will be named AbstractStubServer and
StubClient:

jsonrpcstub spec.json --cpp-server=AbstractStubServer --cpp-client=StubClient

Generate JavaScript Client class MyRpcClient into file someclient.js:

jsonrpcstub spec.json --js-client=MyRpcClient --js-client-file=someclient.js

EXIT STATUS


This command returns 0 if no error occurred. In any other case, it returns 1.

Use jsonrpcstub online using onworks.net services


Free Servers & Workstations

Download Windows & Linux apps

  • 1
    PAC Manager
    PAC Manager
    PAC is a Perl/GTK replacement for
    SecureCRT/Putty/etc (linux
    ssh/telnet/... gui)... It provides a GUI
    to configure connections: users,
    passwords, EXPECT regula...
    Download PAC Manager
  • 2
    GeoServer
    GeoServer
    GeoServer is an open-source software
    server written in Java that allows users
    to share and edit geospatial data.
    Designed for interoperability, it
    publishes da...
    Download GeoServer
  • 3
    Firefly III
    Firefly III
    A free and open-source personal finance
    manager. Firefly III features a
    double-entry bookkeeping system. You can
    quickly enter and organize your
    transactions i...
    Download Firefly III
  • 4
    Apache OpenOffice Extensions
    Apache OpenOffice Extensions
    The official catalog of Apache
    OpenOffice extensions. You'll find
    extensions ranging from dictionaries to
    tools to import PDF files and to connect
    with ext...
    Download Apache OpenOffice Extensions
  • 5
    MantisBT
    MantisBT
    Mantis is an easily deployable, web
    based bugtracker to aid product bug
    tracking. It requires PHP, MySQL and a
    web server. Checkout our demo and hosted
    offerin...
    Download MantisBT
  • 6
    LAN Messenger
    LAN Messenger
    LAN Messenger is a p2p chat application
    for intranet communication and does not
    require a server. A variety of handy
    features are supported including
    notificat...
    Download LAN Messenger
  • More »

Linux commands

Ad