reyna

Additional

Language
Java
Version
N/A
Created
Jun 15, 2012
Updated
Nov 10, 2016 (Retired)
Owner
B2M Solutions (B2MSolutions)
Contributors
Youhana Hana (Youhana-Hana)
Fabian (fabei)
James Bloomer (jamesbloomer)
Roy Lines (roylines)
Alberto Zaccagni (lazywithclass)
Steve Wood (sjwood)
B2M Development (b2mdevelopment)
ivanbokii
CharlesGarth
9
Activity
Badge
Generate
Download
Source code

Advertisement

reyna : Icelandic for "try"

An android store and forward library for http post requests. Reyna will store your requests and post them when there is a valid connection.

Installation

Reyna is a standard android library and can be referenced as a jar in your project.

If you don't want to build your own, you can download the latest version from the artifacts directory.

Android Manifest

You will need to add the following entries into your AndroidManifest.xml in order for reyna to have the correct permissions, services and receivers.

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.package.my"
    android:versionCode="1"
    android:versionName="1.0.0.0">

    <uses-sdk android:minSdkVersion="8" />

    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.INTERNET" />

  <application>
        <service android:name="com.b2msolutions.reyna.services.StoreService" />
        <service android:name="com.b2msolutions.reyna.services.ForwardService" />
        <receiver android:name="com.b2msolutions.reyna.receivers.ForwardServiceReceiver">
            <intent-filter>
                <action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
            </intent-filter>
        </receiver>
    </application>
 </manifest>

Usage

 import com.b2msolutions.reyna.services.StoreService;

 // Add any headers if required
 Header[] headers = new Header[] {
  new Header("Content-Type", "application/json"),
  new Header("myheader", "header content"),

  // gzip content when posting
  new Header("Content-Encoding", "gzip")
 };


 // Create the message to send
 Message message = new Message(
  new URI("http://server.tosendmessageto.com"),
  "body of post, probably JSON",
  headers);

 // Send the message to Reyna
 StoreService.start(context, message);


 // set Reyna logging level, same constant values as android.util.log (ERROR, WARN, INFO, DEBUG, VERBOSE)
 StoreService.setLogLevel(level);

Building jar

From the Reyna root folder

  • run `./hooks/pre-commit
  • inside reyna/bin you will find classes.jar, rename it according to semver

Contributors

Pair programmed by Roy Lines and James Bloomer. Ivan Bokii and Youhana Hana.