// ------------------------------------------------------------------------------
//
// This code was generated by a tool.
// Mono Runtime Version: 4.0.30319.1
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
//
// ------------------------------------------------------------------------------
using System;
using System.Collections;
using System.Collections.Generic;
using System.Serialization;
namespace Kadecot
{
public class WampSerializer
{
public static string createHello(string realm, string details)
{
string data;
if (realm == null || realm.Equals("")) {
throw new ArgumentNullException();
}
if (details == null || details.Equals("")) {
throw new ArgumentNullException();
}
object detailJson = Json.Parse(details);
IList list = new List();
list.Add((int)WAMP_MSG_TYPE.HELLO);
list.Add(realm);
list.Add(detailJson);
data = Json.Stringify(list);
System.Diagnostics.Debug.WriteLine("[wamp][HELLO] " + data);
return data;
}
public static string createWelcome(int session, string details)
{
string data;
object detailJson = Json.Parse(details);
IList list = new List();
list.Add((int)WAMP_MSG_TYPE.WELCOME);
list.Add(session);
list.Add(detailJson);
data = Json.Stringify(list);
System.Diagnostics.Debug.WriteLine("[wamp][WELCOME] " + data);
return data;
}
public static string createAbort(string details, string reason)
{
string data;
if (details == null || details.Equals("")) {
throw new ArgumentNullException();
}
if (reason == null || reason.Equals("")) {
throw new ArgumentNullException();
}
object detailJson = Json.Parse(details);
IList list = new List();
list.Add((int)WAMP_MSG_TYPE.ABORT);
list.Add(detailJson);
list.Add(reason);
data = Json.Stringify(list);
System.Diagnostics.Debug.WriteLine("[wamp][ABORT] " + data);
return data;
}
public static string createChallenge(string authMethod, string extra)
{
string data;
if (authMethod == null || authMethod.Equals("")) {
throw new ArgumentNullException();
}
if (extra == null || extra.Equals("")) {
throw new ArgumentNullException();
}
object extraJson = Json.Parse(extra);
IList list = new List();
list.Add((int)WAMP_MSG_TYPE.CHALLENGE);
list.Add(authMethod);
list.Add(extraJson);
data = Json.Stringify(list);
System.Diagnostics.Debug.WriteLine("[wamp][CHALLENGE] " + data);
return data;
}
public static string createAuthenticate(string signature, string extra)
{
string data;
if (signature == null || signature.Equals("")) {
throw new ArgumentNullException();
}
if (extra == null || extra.Equals("")) {
throw new ArgumentNullException();
}
object extraJson = Json.Parse(extra);
IList list = new List();
list.Add((int)WAMP_MSG_TYPE.AUTHENTICATE);
list.Add(signature);
list.Add(extraJson);
data = Json.Stringify(list);
System.Diagnostics.Debug.WriteLine("[wamp][AUTHENTICATE] " + data);
return data;
}
public static string createGoodbye(string details, string reason)
{
string data;
if (details == null || details.Equals("")) {
throw new ArgumentNullException();
}
if (reason == null) {
throw new ArgumentNullException();
}
object detailJson = Json.Parse(details);
IList list = new List();
list.Add((int)WAMP_MSG_TYPE.GOODBYE);
list.Add(detailJson);
list.Add(reason);
data = Json.Stringify(list);
System.Diagnostics.Debug.WriteLine("[wamp][GOODBYE] " + data);
return data;
}
public static string createHeartbeat(int incomingSeq, int outgoingSeq, string discard)
{
string data;
IList list = new List();
if (discard == null || discard.Equals("")) {
list.Add((int)WAMP_MSG_TYPE.HEARTBEAT);
list.Add(incomingSeq);
list.Add(outgoingSeq);
data = Json.Stringify(list);
}
else {
list.Add((int)WAMP_MSG_TYPE.HEARTBEAT);
list.Add(incomingSeq);
list.Add(outgoingSeq);
list.Add(discard);
data = Json.Stringify(list);
}
System.Diagnostics.Debug.WriteLine("[wamp][HEARTBEAT] " + data);
return data;
}
public static string createError(int type, int request, string details, string error, string arguments, string argumentsKw)
{
string data;
if (details == null || details.Equals("")) {
throw new ArgumentNullException();
}
if (error == null || error.Equals("")) {
throw new ArgumentNullException();
}
object detailJson = Json.Parse(details);
object argsJson = Json.Parse(arguments);
object argsKwJson = Json.Parse(argumentsKw);
IList list = new List();
list.Add((int)WAMP_MSG_TYPE.ERROR);
list.Add(type);
list.Add(request);
list.Add(detailJson);
list.Add(error);
if (arguments != null && argumentsKw == null) {
list.Add(argsJson);
}
else if (arguments != null && argumentsKw != null) {
list.Add(argsJson);
list.Add(argsKwJson);
}
data = Json.Stringify(list);
System.Diagnostics.Debug.WriteLine("[wamp][ERROR] " + data);
return data;
}
public static string createPublish(int request, string options, string topic, string arguments, string argumentsKw)
{
string data;
if (options == null || options.Equals("")) {
throw new ArgumentNullException();
}
if (topic == null || topic.Equals("")) {
throw new ArgumentNullException();
}
object optJson = Json.Parse(options);
object argsJson = Json.Parse(arguments);
object argsKwJson = Json.Parse(argumentsKw);
IList list = new List();
list.Add((int)WAMP_MSG_TYPE.PUBLISH);
list.Add(request);
list.Add(optJson);
list.Add(topic);
if (arguments != null && argumentsKw == null) {
list.Add(argsJson);
}
else if (arguments != null && argumentsKw != null) {
list.Add(argsJson);
list.Add(argsKwJson);
}
data = Json.Stringify(list);
System.Diagnostics.Debug.WriteLine("[wamp][PUBLISH] " + data);
return data;
}
public static string createPublished(int request, int publication)
{
string data;
IList list = new List();
list.Add((int)WAMP_MSG_TYPE.PUBLISHED);
list.Add(request);
list.Add(publication);
data = Json.Stringify(list);
System.Diagnostics.Debug.WriteLine("[wamp][PUBLISHED] " + data);
return data;
}
public static string createSubscribe(int request, string options, string topic)
{
string data;
if (options == null || options.Equals("")) {
throw new ArgumentNullException();
}
if (topic == null || topic.Equals("")) {
throw new ArgumentNullException();
}
object optJson = Json.Parse(options);
IList list = new List();
list.Add((int)WAMP_MSG_TYPE.SUBSCRIBE);
list.Add(request);
list.Add(optJson);
list.Add(topic);
data = Json.Stringify(list);
System.Diagnostics.Debug.WriteLine("[wamp][SUBSCRIBE] " + data);
return data;
}
public static string createSubscribed(int request, int subscription)
{
string data;
IList list = new List();
list.Add((int)WAMP_MSG_TYPE.SUBSCRIBED);
list.Add(request);
list.Add(subscription);
data = Json.Stringify(list);
System.Diagnostics.Debug.WriteLine("[wamp][SUBSCRIBED] " + data);
return data;
}
public static string createUnsubscribe(int request, int subscription)
{
string data;
IList list = new List();
list.Add((int)WAMP_MSG_TYPE.UNSUBSCRIBE);
list.Add(request);
list.Add(subscription);
// list.Add ("com.sonycsl.kadecot.echonetlite.procedure.set.topic.HomeAirConditioner.OperationStatus");
data = Json.Stringify(list);
System.Diagnostics.Debug.WriteLine("[wamp][UNSUBSCRIBE] " + data);
return data;
}
public static string createUnsubscribed(int request)
{
string data;
IList list = new List();
list.Add((int)WAMP_MSG_TYPE.UNSUBSCRIBED);
list.Add(request);
data = Json.Stringify(list);
System.Diagnostics.Debug.WriteLine("[wamp][UNSUBSCRIBED] " + data);
return data;
}
public static string createEvent(int subscription, int publication, string details, string arguments, string argumentsKw)
{
string data;
if (details == null || details.Equals("")) {
throw new ArgumentNullException();
}
object detailJson = Json.Parse(details);
object argsJson = Json.Parse(arguments);
object argsKwJson = Json.Parse(argumentsKw);
IList list = new List();
list.Add((int)WAMP_MSG_TYPE.EVENT);
list.Add(subscription);
list.Add(publication);
list.Add(detailJson);
if (arguments != null && argumentsKw == null) {
list.Add(argsJson);
}
else if (arguments != null && argumentsKw != null) {
list.Add(argsJson);
list.Add(argsKwJson);
}
data = Json.Stringify(list);
System.Diagnostics.Debug.WriteLine("[wamp][EVENT] " + data);
return data;
}
///
/// クライアントから送るメッセージを作成します
///
/// リクエスト番号
/// オプション
///
///
///
///
public static string createCall(int request, string options, string procedure, string arguments, string argumentsKw)
{
string data;
if (options == null || options.Equals("")) {
throw new ArgumentNullException();
}
if (procedure == null || procedure.Equals("")) {
throw new ArgumentNullException();
}
object optionJson = Json.Parse(options);
object argsJson = Json.Parse(arguments);
object argsKwJson = Json.Parse(argumentsKw);
IList list = new List();
list.Add((int)WAMP_MSG_TYPE.CALL);
list.Add(request);
list.Add(optionJson);
list.Add(procedure);
if (arguments != null && argumentsKw == null) {
list.Add(argsJson);
}
else if (arguments != null && argumentsKw != null) {
list.Add(argsJson);
list.Add(argsKwJson);
}
data = Json.Stringify(list);
System.Diagnostics.Debug.WriteLine("[wamp][CALL] " + data);
return data;
}
public static string createCancel(int request, string options)
{
string data;
if (options == null || options.Equals("")) {
throw new ArgumentNullException();
}
object optionJson = Json.Parse(options);
IList list = new List();
list.Add((int)WAMP_MSG_TYPE.CANCEL);
list.Add(request);
list.Add(optionJson);
data = Json.Stringify(list);
System.Diagnostics.Debug.WriteLine("[wamp][CANCEL] " + data);
return data;
}
public static string createResult(int request, string details, string arguments, string argumentsKw)
{
string data;
if (details == null || details.Equals("")) {
throw new ArgumentNullException();
}
object detailJson = Json.Parse(details);
object argsJson = Json.Parse(arguments);
object argsKwJson = Json.Parse(argumentsKw);
IList list = new List();
list.Add((int)WAMP_MSG_TYPE.RESULT);
list.Add(request);
list.Add(detailJson);
if (arguments != null && argumentsKw == null) {
list.Add(argsJson);
}
else if (arguments != null && argumentsKw != null) {
list.Add(argsJson);
list.Add(argsKwJson);
}
data = Json.Stringify(list);
System.Diagnostics.Debug.WriteLine("[wamp][RESULT] " + data);
return data;
}
public static string createRegister(int request, string options, string procedure)
{
string data;
if (options == null || options.Equals("")) {
throw new ArgumentNullException();
}
if (procedure == null || procedure.Equals("")) {
throw new ArgumentNullException();
}
object optJson = Json.Parse(options);
IList list = new List();
list.Add((int)WAMP_MSG_TYPE.REGISTER);
list.Add(request);
list.Add(optJson);
list.Add(procedure);
data = Json.Stringify(list);
System.Diagnostics.Debug.WriteLine("[wamp][REGISTER] " + data);
return data;
}
public static string createRegistered(int request, int registration)
{
string data;
IList list = new List();
list.Add((int)WAMP_MSG_TYPE.REGISTERED);
list.Add(request);
list.Add(registration);
data = Json.Stringify(list);
System.Diagnostics.Debug.WriteLine("[wamp][REGISTERED] " + data);
return data;
}
public static string createUnregister(int request, int registration)
{
string data;
IList list = new List();
list.Add((int)WAMP_MSG_TYPE.UNREGISTER);
list.Add(request);
list.Add(registration);
data = Json.Stringify(list);
System.Diagnostics.Debug.WriteLine("[wamp][UNREGISTER] " + data);
return data;
}
public static string createUnregistered(int request)
{
string data;
IList list = new List();
list.Add((int)WAMP_MSG_TYPE.UNREGISTERED);
list.Add(request);
data = Json.Stringify(list);
System.Diagnostics.Debug.WriteLine("[wamp][UNREGISTERED] " + data);
return data;
}
public static string createInvocation(int request, int registration, string details, string arguments, string argumentsKw)
{
string data;
if (details == null || details.Equals("")) {
throw new ArgumentNullException();
}
object detailJson = Json.Parse(details);
object argsJson = Json.Parse(arguments);
object argsKwJson = Json.Parse(argumentsKw);
IList list = new List();
list.Add((int)WAMP_MSG_TYPE.INVOCATION);
list.Add(request);
list.Add(registration);
list.Add(detailJson);
if (arguments != null && argumentsKw == null) {
list.Add(argsJson);
}
else if (arguments != null && argumentsKw != null) {
list.Add(argsJson);
list.Add(argsKwJson);
}
data = Json.Stringify(list);
System.Diagnostics.Debug.WriteLine("[wamp][INVOCATION] " + data);
return data;
}
public static string createInterrupt(int request, string options)
{
string data;
if (options == null || options.Equals("")) {
throw new ArgumentNullException();
}
object optJson = Json.Parse(options);
IList list = new List();
list.Add((int)WAMP_MSG_TYPE.INTERRUPT);
list.Add(request);
list.Add(optJson);
data = Json.Stringify(list);
System.Diagnostics.Debug.WriteLine("[wamp][INTERRUPT] " + data);
return data;
}
public static string createYield(int request, string options, string arguments, string argumentsKw)
{
string data;
if (options == null || options.Equals("")) {
throw new ArgumentNullException();
}
object optJson = Json.Parse(options);
object argsJson = Json.Parse(arguments);
object argsKwJson = Json.Parse(argumentsKw);
IList list = new List();
list.Add((int)WAMP_MSG_TYPE.YIELD);
list.Add(request);
list.Add(optJson);
if (arguments != null && argumentsKw == null) {
list.Add(argsJson);
}
else if (arguments != null && argumentsKw != null) {
list.Add(argsJson);
list.Add(argsKwJson);
}
data = Json.Stringify(list);
System.Diagnostics.Debug.WriteLine("[wamp][YIELD] " + data);
return data;
}
}
}