xml_rpc 0.1.4

  • README.md
  • CHANGELOG.md
  • Installing
  • Versions
  • 53

xml_rpc

Build Status

A library to communicate through the XML-RPC protocol.

Usage

A simple usage example:

import 'package:xml_rpc/client.dart' as xml_rpc;

main() {
  final url = '...';
  xml_rpc
      .call(url, 'examples.getStateName', [41])
      .then((result) => print(result))
      .catchError((error) => print(error));
}

It will sent the following xml content:

<?xml version="1.0"?>
<methodCall>
  <methodName>examples.getStateName</methodName>
  <params>
    <param>
      <value><i4>41</i4></value>
    </param>
  </params>
</methodCall>

Every xmlrpc call has to be done with the call(...) function. You must give the url, the method name and the parameters. This function returns a Future with the result received. If the response contains a <fault> a Fault object is thrown and can be catch with the .catchError() on the Future.

To use this package from browser you can provide as client optional named argument on call a http.BrowserClient.

Parameter types

Here are the conversion table.

xmlrpcDart
<int> or <i4>int
<boolean>bool
<string> or TextString
<double>double
<dateTime.iso8601>DateTime
<base64>Base64Value
<struct>Map<String, dynamic>
<array>List

Features and bugs

Please file feature requests and bugs at the issue tracker.

Changelog

0.1.4 (2016-11-24)

  • Evo: remove crypto dependency

0.1.3 (2015-02-05)

  • Evo: allow to specify encoding for calls.

0.1.2 (2015-01-31)

  • Evo: call accepts an optional named parameter client allowing to make the calls from browser.
  • Fix: If no type is indicated, the type is string.
  • Fix: <boolean> instead of <bool>.

0.1.1 (2015-01-30)

  • Fix: Http exception are not catched.

0.1.0 (2015-01-28)

  • First completed version for client side usage.

Semantic Version Conventions

http://semver.org/

  • Stable: All even numbered minor versions are considered API stable: i.e.: v1.0.x, v1.2.x, and so on.
  • Development: All odd numbered minor versions are considered API unstable: i.e.: v0.9.x, v1.1.x, and so on.

1. Depend on it

Add this to your package's pubspec.yaml file:


dependencies:
  xml_rpc: "^0.1.4"

2. Install it

You can install packages from the command line:

with pub:


$ pub get

with Flutter:


$ flutter packages get

Alternatively, your editor might support pub get or packages get. Check the docs for your editor to learn more.

3. Import it

Now in your Dart code, you can use:


import 'package:xml_rpc/client.dart';
        
Version Uploaded Documentation Archive
0.1.4 Nov 24, 2016 Go to the documentation of xml_rpc 0.1.4 Download xml_rpc 0.1.4 archive
0.1.3 Feb 5, 2015 Go to the documentation of xml_rpc 0.1.3 Download xml_rpc 0.1.3 archive
0.1.2 Jan 31, 2015 Go to the documentation of xml_rpc 0.1.2 Download xml_rpc 0.1.2 archive
0.1.1 Jan 30, 2015 Go to the documentation of xml_rpc 0.1.1 Download xml_rpc 0.1.1 archive
0.1.0 Jan 28, 2015 Go to the documentation of xml_rpc 0.1.0 Download xml_rpc 0.1.0 archive

Analysis

This feature is new.
We welcome feedback.
More details: scoring.

We analyzed this package, and provided a score, details, and suggestions below.

  • tool failures on Feb 15, 2018
  • Dart: 2.0.0-dev.20.0
  • pana: 0.10.1

Scores

Popularity:
Describes how popular the package is relative to other packages. [more]
29 / 100
Health:
Code health derived from static analysis. [more]
77 / 100
Maintenance:
Reflects how tidy and up-to-date the package is. [more]
73 / 100
Overall score:
Weighted score of the above. [more]
53

Platforms

Detected platforms: Flutter, web, other

No platform restriction found in libraries.

Suggestions

  • Fix lib/src/converter.dart.

    Strong-mode analysis of lib/src/converter.dart failed with the following error:

    line: 152 col: 54
    The argument type 'List' can't be assigned to the parameter type 'Iterable<XmlNode>'.

  • Fix issues reported by dartanalyzer.

    dartanalyzer reported 1 error(s) and 0 warning(s).

  • The description is too short.

    Add more detail about the package, what it does and what is its target use case. Try to write at least 60 characters.

  • Package is pre-v1 release.

    While there is nothing inherently wrong with versions of 0.*.*, it usually means that the author is still experimenting with the general direction API.

  • Maintain an example.

    None of the files in your example/ directory matches a known example patterns. Common file name patterns include: main.dart, example.dart or you could also use xml_rpc.dart.

Dependencies

Package Constraint Resolved Available
Direct dependencies
Dart SDK >=1.8.0 <2.0.0
http ^0.11.0 0.11.3+16
xml ^2.2.0 2.6.0 3.0.0-alpha
Transitive dependencies
async 2.0.3 2.0.4
charcode 1.1.1
collection 1.14.5
http_parser 3.1.1
matcher 0.12.1+4
path 1.5.1
petitparser 1.7.0
source_span 1.4.0
stack_trace 1.9.2
string_scanner 1.0.2
typed_data 1.1.5
Dev dependencies
test any