Add support for Publication for bindings.

This commit is contained in:
bossiel 2010-05-26 15:31:50 +00:00
parent 94e401647f
commit 8f09a7be57
86 changed files with 8082 additions and 5814 deletions

View File

@ -0,0 +1,49 @@
/*
* Copyright (C) 2009 Mamadou Diop.
*
* Contact: Mamadou Diop <diopmamadou@doubango.org>
*
* This file is part of Open Source Doubango Framework.
*
* DOUBANGO is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* DOUBANGO is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with DOUBANGO.
*
*/
#include "PublicationEvent.h"
#include "PublicationSession.h"
#include "Common.h"
PublicationEvent::PublicationEvent()
:SipEvent(sipevent)
{
}
PublicationEvent::PublicationEvent(const tsip_event_t *sipevent)
:SipEvent(sipevent)
{
}
PublicationEvent::~PublicationEvent()
{
}
tsip_publish_event_type_t PublicationEvent::getType() const
{
return TSIP_PUBLISH_EVENT(this->sipevent)->type;
}
const PublicationSession* PublicationEvent::getSession() const
{
return dyn_cast<const PublicationSession*>(this->getBaseSession());
}

View File

@ -0,0 +1,44 @@
/*
* Copyright (C) 2009 Mamadou Diop.
*
* Contact: Mamadou Diop <diopmamadou@doubango.org>
*
* This file is part of Open Source Doubango Framework.
*
* DOUBANGO is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* DOUBANGO is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with DOUBANGO.
*
*/
#ifndef TINYWRAP_PUBLICATIONEVENT_H
#define TINYWRAP_PUBLICATIONEVENT_H
#include "SipEvent.h"
class PublicationSession;
class PublicationEvent: public SipEvent
{
public:
PublicationEvent();
#if !defined(SWIG)
PublicationEvent(const tsip_event_t *sipevent);
#endif
virtual ~PublicationEvent();
public: /* Public API functions */
tsip_publish_event_type_t getType() const;
const PublicationSession* getSession() const;
};
#endif /* TINYWRAP_PUBLICATIONEVENT_H */

View File

@ -0,0 +1,56 @@
/*
* Copyright (C) 2009 Mamadou Diop.
*
* Contact: Mamadou Diop <diopmamadou@doubango.org>
*
* This file is part of Open Source Doubango Framework.
*
* DOUBANGO is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* DOUBANGO is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with DOUBANGO.
*
*/
#include "PublicationSession.h"
PublicationSession::PublicationSession(SipStack* Stack)
: SipSession(Stack)
{
}
PublicationSession::~PublicationSession()
{
}
bool PublicationSession::Publish(const void* payload, unsigned len)
{
TSK_DEBUG_INFO("Android---PublicationSession::Publish()");
int ret;
if(payload && len){
ret = tsip_action_PUBLISH(this->handle,
TSIP_ACTION_SET_PAYLOAD(payload, len),
TSIP_ACTION_SET_NULL());
}
else{
ret = tsip_action_PUBLISH(this->handle,
TSIP_ACTION_SET_NULL());
}
return (ret == 0);
}
bool PublicationSession::UnPublish()
{
TSK_DEBUG_INFO("Android---PublicationSession::UnPublish()");
int ret = tsip_action_UNPUBLISH(this->handle,
TSIP_ACTION_SET_NULL());
return (ret == 0);
}

View File

@ -0,0 +1,39 @@
/*
* Copyright (C) 2009 Mamadou Diop.
*
* Contact: Mamadou Diop <diopmamadou@doubango.org>
*
* This file is part of Open Source Doubango Framework.
*
* DOUBANGO is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* DOUBANGO is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with DOUBANGO.
*
*/
#ifndef TINYWRAP_PUBLICATIONSESSION_H
#define TINYWRAP_PUBLICATIONSESSION_H
#include "SipSession.h"
class PublicationSession : public SipSession
{
public: /* ctor() and dtor() */
PublicationSession(SipStack* Stack);
virtual ~PublicationSession();
public: /* Public functions */
bool Publish(const void* payload, unsigned len);
bool UnPublish();
};
#endif /* TINYWRAP_PUBLICATIONSESSION_H */

View File

@ -25,8 +25,8 @@
#include "Common.h"
RegistrationEvent::RegistrationEvent()
:SipEvent(tsk_null)
{
::RegistrationEvent(tsk_null);
}
RegistrationEvent::RegistrationEvent(const tsip_event_t *sipevent)

View File

@ -24,6 +24,7 @@
class RegistrationEvent;
class SubscriptionEvent;
class PublicationEvent;
class SipCallback
{
@ -32,6 +33,7 @@ public:
virtual ~SipCallback() {}
virtual int OnRegistrationChanged(const RegistrationEvent* e) { return -1; }
virtual int OnSubscriptionChanged(const SubscriptionEvent* e) { return -1; }
virtual int OnPublicationChanged(const PublicationEvent* e) { return -1; }
private:

View File

@ -33,7 +33,9 @@ public:
#endif
virtual ~SipMessage();
#if !defined(SWIG)
const void* getSipContent() const;
#endif
//%newobject getHeaderValueAt;
char* getSipHeaderValue(const char* name, unsigned index = 0);

View File

@ -22,6 +22,8 @@
#include "SipStack.h"
#include "SipSession.h"
#include "PublicationEvent.h"
#include "PublicationSession.h"
#include "RegistrationEvent.h"
#include "RegistrationSession.h"
#include "SubscriptionEvent.h"
@ -245,27 +247,26 @@ int stack_callback(const tsip_event_t *sipevent)
e = new RegistrationEvent(sipevent);
Stack->getCallback()->OnRegistrationChanged((const RegistrationEvent*)e);
}
//ret = register_handle_event(sipevent);
break;
}
case tsip_event_invite:
{ /* INVITE */
//ret = invite_handle_event(sipevent);
break;
}
case tsip_event_message:
{ /* MESSAGE */
//ret = message_handle_event(sipevent);
break;
}
case tsip_event_options:
{ /* OPTIONS */
//ret = options_handle_event(sipevent);
break;
}
case tsip_event_publish:
{ /* PUBLISH */
//ret = publish_handle_event(sipevent);
if(Stack->getCallback()){
e = new PublicationEvent(sipevent);
Stack->getCallback()->OnPublicationChanged((const PublicationEvent*)e);
}
break;
}
case tsip_event_subscribe:

View File

@ -4,6 +4,8 @@
#include "SipMessage.h"
#include "SipEvent.h"
#include "SipSession.h"
#include "PublicationEvent.h"
#include "PublicationSession.h"
#include "RegistrationEvent.h"
#include "RegistrationSession.h"
#include "SubscriptionEvent.h"
@ -24,6 +26,8 @@
%include "SipMessage.h"
%include "SipEvent.h"
%include "SipSession.h"
%include "PublicationEvent.h"
%include "PublicationSession.h"
%include "RegistrationEvent.h"
%include "RegistrationSession.h"
%include "SubscriptionEvent.h"
@ -85,4 +89,19 @@ typedef enum tsip_subscribe_event_type_e
tsip_o_notify,
tsip_ao_notify
}
tsip_subscribe_event_type_t;
tsip_subscribe_event_type_t;
/* ====== From "tinySIP\include\tinysip\tsip_api_publish.h" ====== */
typedef enum tsip_publish_event_type_e
{
tsip_i_publish,
tsip_ai_publish,
tsip_o_publish,
tsip_ao_publish,
tsip_i_unpublish,
tsip_ai_unpublish,
tsip_o_unpublish,
tsip_ao_unpublish
}
tsip_publish_event_type_t;

View File

@ -0,0 +1,56 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.
* ----------------------------------------------------------------------------- */
using System;
using System.Runtime.InteropServices;
public class PublicationEvent : SipEvent {
private HandleRef swigCPtr;
internal PublicationEvent(IntPtr cPtr, bool cMemoryOwn) : base(tinyWRAPPINVOKE.PublicationEventUpcast(cPtr), cMemoryOwn) {
swigCPtr = new HandleRef(this, cPtr);
}
internal static HandleRef getCPtr(PublicationEvent obj) {
return (obj == null) ? new HandleRef(null, IntPtr.Zero) : obj.swigCPtr;
}
~PublicationEvent() {
Dispose();
}
public override void Dispose() {
lock(this) {
if (swigCPtr.Handle != IntPtr.Zero) {
if (swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPPINVOKE.delete_PublicationEvent(swigCPtr);
}
swigCPtr = new HandleRef(null, IntPtr.Zero);
}
GC.SuppressFinalize(this);
base.Dispose();
}
}
public PublicationEvent() : this(tinyWRAPPINVOKE.new_PublicationEvent(), true) {
}
public tsip_publish_event_type_t getType() {
tsip_publish_event_type_t ret = (tsip_publish_event_type_t)tinyWRAPPINVOKE.PublicationEvent_getType(swigCPtr);
return ret;
}
public PublicationSession getSession() {
IntPtr cPtr = tinyWRAPPINVOKE.PublicationEvent_getSession(swigCPtr);
PublicationSession ret = (cPtr == IntPtr.Zero) ? null : new PublicationSession(cPtr, false);
return ret;
}
}

View File

@ -0,0 +1,55 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.
* ----------------------------------------------------------------------------- */
using System;
using System.Runtime.InteropServices;
public class PublicationSession : SipSession {
private HandleRef swigCPtr;
internal PublicationSession(IntPtr cPtr, bool cMemoryOwn) : base(tinyWRAPPINVOKE.PublicationSessionUpcast(cPtr), cMemoryOwn) {
swigCPtr = new HandleRef(this, cPtr);
}
internal static HandleRef getCPtr(PublicationSession obj) {
return (obj == null) ? new HandleRef(null, IntPtr.Zero) : obj.swigCPtr;
}
~PublicationSession() {
Dispose();
}
public override void Dispose() {
lock(this) {
if (swigCPtr.Handle != IntPtr.Zero) {
if (swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPPINVOKE.delete_PublicationSession(swigCPtr);
}
swigCPtr = new HandleRef(null, IntPtr.Zero);
}
GC.SuppressFinalize(this);
base.Dispose();
}
}
public PublicationSession(SipStack Stack) : this(tinyWRAPPINVOKE.new_PublicationSession(SipStack.getCPtr(Stack)), true) {
}
public bool Publish(byte[] payload, uint len) {
bool ret = tinyWRAPPINVOKE.PublicationSession_Publish(swigCPtr, payload, len);
return ret;
}
public bool UnPublish() {
bool ret = tinyWRAPPINVOKE.PublicationSession_UnPublish(swigCPtr);
return ret;
}
}

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.
@ -27,11 +27,13 @@ public class RegistrationEvent : SipEvent {
public override void Dispose() {
lock(this) {
if(swigCPtr.Handle != IntPtr.Zero && swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPPINVOKE.delete_RegistrationEvent(swigCPtr);
if (swigCPtr.Handle != IntPtr.Zero) {
if (swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPPINVOKE.delete_RegistrationEvent(swigCPtr);
}
swigCPtr = new HandleRef(null, IntPtr.Zero);
}
swigCPtr = new HandleRef(null, IntPtr.Zero);
GC.SuppressFinalize(this);
base.Dispose();
}

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.
@ -27,11 +27,13 @@ public class RegistrationSession : SipSession {
public override void Dispose() {
lock(this) {
if(swigCPtr.Handle != IntPtr.Zero && swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPPINVOKE.delete_RegistrationSession(swigCPtr);
if (swigCPtr.Handle != IntPtr.Zero) {
if (swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPPINVOKE.delete_RegistrationSession(swigCPtr);
}
swigCPtr = new HandleRef(null, IntPtr.Zero);
}
swigCPtr = new HandleRef(null, IntPtr.Zero);
GC.SuppressFinalize(this);
base.Dispose();
}

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.
@ -29,11 +29,13 @@ public class SafeObject : IDisposable {
public virtual void Dispose() {
lock(this) {
if(swigCPtr.Handle != IntPtr.Zero && swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPPINVOKE.delete_SafeObject(swigCPtr);
if (swigCPtr.Handle != IntPtr.Zero) {
if (swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPPINVOKE.delete_SafeObject(swigCPtr);
}
swigCPtr = new HandleRef(null, IntPtr.Zero);
}
swigCPtr = new HandleRef(null, IntPtr.Zero);
GC.SuppressFinalize(this);
}
}

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.
@ -29,11 +29,13 @@ public class SipCallback : IDisposable {
public virtual void Dispose() {
lock(this) {
if(swigCPtr.Handle != IntPtr.Zero && swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPPINVOKE.delete_SipCallback(swigCPtr);
if (swigCPtr.Handle != IntPtr.Zero) {
if (swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPPINVOKE.delete_SipCallback(swigCPtr);
}
swigCPtr = new HandleRef(null, IntPtr.Zero);
}
swigCPtr = new HandleRef(null, IntPtr.Zero);
GC.SuppressFinalize(this);
}
}
@ -52,12 +54,19 @@ public class SipCallback : IDisposable {
return ret;
}
public virtual int OnPublicationChanged(PublicationEvent e) {
int ret = ((this.GetType() == typeof(SipCallback)) ? tinyWRAPPINVOKE.SipCallback_OnPublicationChanged(swigCPtr, PublicationEvent.getCPtr(e)) : tinyWRAPPINVOKE.SipCallback_OnPublicationChangedSwigExplicitSipCallback(swigCPtr, PublicationEvent.getCPtr(e)));
return ret;
}
private void SwigDirectorConnect() {
if (SwigDerivedClassHasMethod("OnRegistrationChanged", swigMethodTypes0))
swigDelegate0 = new SwigDelegateSipCallback_0(SwigDirectorOnRegistrationChanged);
if (SwigDerivedClassHasMethod("OnSubscriptionChanged", swigMethodTypes1))
swigDelegate1 = new SwigDelegateSipCallback_1(SwigDirectorOnSubscriptionChanged);
tinyWRAPPINVOKE.SipCallback_director_connect(swigCPtr, swigDelegate0, swigDelegate1);
if (SwigDerivedClassHasMethod("OnPublicationChanged", swigMethodTypes2))
swigDelegate2 = new SwigDelegateSipCallback_2(SwigDirectorOnPublicationChanged);
tinyWRAPPINVOKE.SipCallback_director_connect(swigCPtr, swigDelegate0, swigDelegate1, swigDelegate2);
}
private bool SwigDerivedClassHasMethod(string methodName, Type[] methodTypes) {
@ -74,12 +83,19 @@ public class SipCallback : IDisposable {
return OnSubscriptionChanged((e == IntPtr.Zero) ? null : new SubscriptionEvent(e, false));
}
private int SwigDirectorOnPublicationChanged(IntPtr e) {
return OnPublicationChanged((e == IntPtr.Zero) ? null : new PublicationEvent(e, false));
}
public delegate int SwigDelegateSipCallback_0(IntPtr e);
public delegate int SwigDelegateSipCallback_1(IntPtr e);
public delegate int SwigDelegateSipCallback_2(IntPtr e);
private SwigDelegateSipCallback_0 swigDelegate0;
private SwigDelegateSipCallback_1 swigDelegate1;
private SwigDelegateSipCallback_2 swigDelegate2;
private static Type[] swigMethodTypes0 = new Type[] { typeof(RegistrationEvent) };
private static Type[] swigMethodTypes1 = new Type[] { typeof(SubscriptionEvent) };
private static Type[] swigMethodTypes2 = new Type[] { typeof(PublicationEvent) };
}

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.
@ -29,11 +29,13 @@ public class SipDebugCallback : IDisposable {
public virtual void Dispose() {
lock(this) {
if(swigCPtr.Handle != IntPtr.Zero && swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPPINVOKE.delete_SipDebugCallback(swigCPtr);
if (swigCPtr.Handle != IntPtr.Zero) {
if (swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPPINVOKE.delete_SipDebugCallback(swigCPtr);
}
swigCPtr = new HandleRef(null, IntPtr.Zero);
}
swigCPtr = new HandleRef(null, IntPtr.Zero);
GC.SuppressFinalize(this);
}
}

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.
@ -29,11 +29,13 @@ public class SipEvent : IDisposable {
public virtual void Dispose() {
lock(this) {
if(swigCPtr.Handle != IntPtr.Zero && swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPPINVOKE.delete_SipEvent(swigCPtr);
if (swigCPtr.Handle != IntPtr.Zero) {
if (swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPPINVOKE.delete_SipEvent(swigCPtr);
}
swigCPtr = new HandleRef(null, IntPtr.Zero);
}
swigCPtr = new HandleRef(null, IntPtr.Zero);
GC.SuppressFinalize(this);
}
}

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.
@ -29,11 +29,13 @@ public class SipMessage : IDisposable {
public virtual void Dispose() {
lock(this) {
if(swigCPtr.Handle != IntPtr.Zero && swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPPINVOKE.delete_SipMessage(swigCPtr);
if (swigCPtr.Handle != IntPtr.Zero) {
if (swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPPINVOKE.delete_SipMessage(swigCPtr);
}
swigCPtr = new HandleRef(null, IntPtr.Zero);
}
swigCPtr = new HandleRef(null, IntPtr.Zero);
GC.SuppressFinalize(this);
}
}
@ -41,8 +43,6 @@ public class SipMessage : IDisposable {
public SipMessage() : this(tinyWRAPPINVOKE.new_SipMessage(), true) {
}
public byte[] getSipContent() { return tinyWRAPPINVOKE.SipMessage_getSipContent(swigCPtr); }
public string getSipHeaderValue(string name, uint index) {
string ret = tinyWRAPPINVOKE.SipMessage_getSipHeaderValue__SWIG_0(swigCPtr, name, index);
return ret;

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.
@ -29,11 +29,13 @@ public class SipSession : IDisposable {
public virtual void Dispose() {
lock(this) {
if(swigCPtr.Handle != IntPtr.Zero && swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPPINVOKE.delete_SipSession(swigCPtr);
if (swigCPtr.Handle != IntPtr.Zero) {
if (swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPPINVOKE.delete_SipSession(swigCPtr);
}
swigCPtr = new HandleRef(null, IntPtr.Zero);
}
swigCPtr = new HandleRef(null, IntPtr.Zero);
GC.SuppressFinalize(this);
}
}

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.
@ -27,11 +27,13 @@ public class SipStack : SafeObject {
public override void Dispose() {
lock(this) {
if(swigCPtr.Handle != IntPtr.Zero && swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPPINVOKE.delete_SipStack(swigCPtr);
if (swigCPtr.Handle != IntPtr.Zero) {
if (swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPPINVOKE.delete_SipStack(swigCPtr);
}
swigCPtr = new HandleRef(null, IntPtr.Zero);
}
swigCPtr = new HandleRef(null, IntPtr.Zero);
GC.SuppressFinalize(this);
base.Dispose();
}

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.
@ -29,11 +29,13 @@ public class SipUri : IDisposable {
public virtual void Dispose() {
lock(this) {
if(swigCPtr.Handle != IntPtr.Zero && swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPPINVOKE.delete_SipUri(swigCPtr);
if (swigCPtr.Handle != IntPtr.Zero) {
if (swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPPINVOKE.delete_SipUri(swigCPtr);
}
swigCPtr = new HandleRef(null, IntPtr.Zero);
}
swigCPtr = new HandleRef(null, IntPtr.Zero);
GC.SuppressFinalize(this);
}
}

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.
@ -27,11 +27,13 @@ public class SubscriptionEvent : SipEvent {
public override void Dispose() {
lock(this) {
if(swigCPtr.Handle != IntPtr.Zero && swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPPINVOKE.delete_SubscriptionEvent(swigCPtr);
if (swigCPtr.Handle != IntPtr.Zero) {
if (swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPPINVOKE.delete_SubscriptionEvent(swigCPtr);
}
swigCPtr = new HandleRef(null, IntPtr.Zero);
}
swigCPtr = new HandleRef(null, IntPtr.Zero);
GC.SuppressFinalize(this);
base.Dispose();
}

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.
@ -27,11 +27,13 @@ public class SubscriptionSession : SipSession {
public override void Dispose() {
lock(this) {
if(swigCPtr.Handle != IntPtr.Zero && swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPPINVOKE.delete_SubscriptionSession(swigCPtr);
if (swigCPtr.Handle != IntPtr.Zero) {
if (swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPPINVOKE.delete_SubscriptionSession(swigCPtr);
}
swigCPtr = new HandleRef(null, IntPtr.Zero);
}
swigCPtr = new HandleRef(null, IntPtr.Zero);
GC.SuppressFinalize(this);
base.Dispose();
}

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.
@ -202,9 +202,6 @@ class tinyWRAPPINVOKE {
[DllImport("tinyWRAP", EntryPoint="CSharp_delete_SipMessage")]
public static extern void delete_SipMessage(HandleRef jarg1);
[DllImport("tinyWRAP", EntryPoint="CSharp_SipMessage_getSipContent")]
public static extern byte[] SipMessage_getSipContent(HandleRef jarg1);
[DllImport("tinyWRAP", EntryPoint="CSharp_SipMessage_getSipHeaderValue__SWIG_0")]
public static extern string SipMessage_getSipHeaderValue__SWIG_0(HandleRef jarg1, string jarg2, uint jarg3);
@ -265,6 +262,30 @@ class tinyWRAPPINVOKE {
[DllImport("tinyWRAP", EntryPoint="CSharp_SipSession_setToUri")]
public static extern bool SipSession_setToUri(HandleRef jarg1, string jarg2);
[DllImport("tinyWRAP", EntryPoint="CSharp_new_PublicationEvent")]
public static extern IntPtr new_PublicationEvent();
[DllImport("tinyWRAP", EntryPoint="CSharp_delete_PublicationEvent")]
public static extern void delete_PublicationEvent(HandleRef jarg1);
[DllImport("tinyWRAP", EntryPoint="CSharp_PublicationEvent_getType")]
public static extern int PublicationEvent_getType(HandleRef jarg1);
[DllImport("tinyWRAP", EntryPoint="CSharp_PublicationEvent_getSession")]
public static extern IntPtr PublicationEvent_getSession(HandleRef jarg1);
[DllImport("tinyWRAP", EntryPoint="CSharp_new_PublicationSession")]
public static extern IntPtr new_PublicationSession(HandleRef jarg1);
[DllImport("tinyWRAP", EntryPoint="CSharp_delete_PublicationSession")]
public static extern void delete_PublicationSession(HandleRef jarg1);
[DllImport("tinyWRAP", EntryPoint="CSharp_PublicationSession_Publish")]
public static extern bool PublicationSession_Publish(HandleRef jarg1, byte[] jarg2, uint jarg3);
[DllImport("tinyWRAP", EntryPoint="CSharp_PublicationSession_UnPublish")]
public static extern bool PublicationSession_UnPublish(HandleRef jarg1);
[DllImport("tinyWRAP", EntryPoint="CSharp_new_RegistrationEvent")]
public static extern IntPtr new_RegistrationEvent();
@ -331,8 +352,14 @@ class tinyWRAPPINVOKE {
[DllImport("tinyWRAP", EntryPoint="CSharp_SipCallback_OnSubscriptionChangedSwigExplicitSipCallback")]
public static extern int SipCallback_OnSubscriptionChangedSwigExplicitSipCallback(HandleRef jarg1, HandleRef jarg2);
[DllImport("tinyWRAP", EntryPoint="CSharp_SipCallback_OnPublicationChanged")]
public static extern int SipCallback_OnPublicationChanged(HandleRef jarg1, HandleRef jarg2);
[DllImport("tinyWRAP", EntryPoint="CSharp_SipCallback_OnPublicationChangedSwigExplicitSipCallback")]
public static extern int SipCallback_OnPublicationChangedSwigExplicitSipCallback(HandleRef jarg1, HandleRef jarg2);
[DllImport("tinyWRAP", EntryPoint="CSharp_SipCallback_director_connect")]
public static extern void SipCallback_director_connect(HandleRef jarg1, SipCallback.SwigDelegateSipCallback_0 delegate0, SipCallback.SwigDelegateSipCallback_1 delegate1);
public static extern void SipCallback_director_connect(HandleRef jarg1, SipCallback.SwigDelegateSipCallback_0 delegate0, SipCallback.SwigDelegateSipCallback_1 delegate1, SipCallback.SwigDelegateSipCallback_2 delegate2);
[DllImport("tinyWRAP", EntryPoint="CSharp_new_SipDebugCallback")]
public static extern IntPtr new_SipDebugCallback();
@ -430,6 +457,12 @@ class tinyWRAPPINVOKE {
[DllImport("tinyWRAP", EntryPoint="CSharp_SipStack_stop")]
public static extern bool SipStack_stop(HandleRef jarg1);
[DllImport("tinyWRAP", EntryPoint="CSharp_PublicationEventUpcast")]
public static extern IntPtr PublicationEventUpcast(IntPtr objectRef);
[DllImport("tinyWRAP", EntryPoint="CSharp_PublicationSessionUpcast")]
public static extern IntPtr PublicationSessionUpcast(IntPtr objectRef);
[DllImport("tinyWRAP", EntryPoint="CSharp_RegistrationEventUpcast")]
public static extern IntPtr RegistrationEventUpcast(IntPtr objectRef);

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* This file is not intended to be easily readable and contains a number of
* coding conventions designed to improve portability and efficiency. Do not make
@ -35,114 +35,114 @@ template <typename T> T SwigValueInit() {
}
#endif
/* -----------------------------------------------------------------------------
* This section contains generic SWIG labels for method/variable
* declarations/attributes, and other compiler dependent labels.
* ----------------------------------------------------------------------------- */
/* template workaround for compilers that cannot correctly implement the C++ standard */
#ifndef SWIGTEMPLATEDISAMBIGUATOR
# if defined(__SUNPRO_CC) && (__SUNPRO_CC <= 0x560)
# define SWIGTEMPLATEDISAMBIGUATOR template
# elif defined(__HP_aCC)
/* Needed even with `aCC -AA' when `aCC -V' reports HP ANSI C++ B3910B A.03.55 */
/* If we find a maximum version that requires this, the test would be __HP_aCC <= 35500 for A.03.55 */
# define SWIGTEMPLATEDISAMBIGUATOR template
# else
# define SWIGTEMPLATEDISAMBIGUATOR
# endif
#endif
/* inline attribute */
#ifndef SWIGINLINE
# if defined(__cplusplus) || (defined(__GNUC__) && !defined(__STRICT_ANSI__))
# define SWIGINLINE inline
# else
# define SWIGINLINE
# endif
#endif
/* attribute recognised by some compilers to avoid 'unused' warnings */
#ifndef SWIGUNUSED
# if defined(__GNUC__)
# if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
# define SWIGUNUSED __attribute__ ((__unused__))
# else
# define SWIGUNUSED
# endif
# elif defined(__ICC)
# define SWIGUNUSED __attribute__ ((__unused__))
# else
# define SWIGUNUSED
# endif
#endif
#ifndef SWIG_MSC_UNSUPPRESS_4505
# if defined(_MSC_VER)
# pragma warning(disable : 4505) /* unreferenced local function has been removed */
# endif
#endif
#ifndef SWIGUNUSEDPARM
# ifdef __cplusplus
# define SWIGUNUSEDPARM(p)
# else
# define SWIGUNUSEDPARM(p) p SWIGUNUSED
# endif
#endif
/* internal SWIG method */
#ifndef SWIGINTERN
# define SWIGINTERN static SWIGUNUSED
#endif
/* internal inline SWIG method */
#ifndef SWIGINTERNINLINE
# define SWIGINTERNINLINE SWIGINTERN SWIGINLINE
#endif
/* exporting methods */
#if (__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)
# ifndef GCC_HASCLASSVISIBILITY
# define GCC_HASCLASSVISIBILITY
# endif
#endif
#ifndef SWIGEXPORT
# if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
# if defined(STATIC_LINKED)
# define SWIGEXPORT
# else
# define SWIGEXPORT __declspec(dllexport)
# endif
# else
# if defined(__GNUC__) && defined(GCC_HASCLASSVISIBILITY)
# define SWIGEXPORT __attribute__ ((visibility("default")))
# else
# define SWIGEXPORT
# endif
# endif
#endif
/* calling conventions for Windows */
#ifndef SWIGSTDCALL
# if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
# define SWIGSTDCALL __stdcall
# else
# define SWIGSTDCALL
# endif
#endif
/* Deal with Microsoft's attempt at deprecating C standard runtime functions */
#if !defined(SWIG_NO_CRT_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_CRT_SECURE_NO_DEPRECATE)
# define _CRT_SECURE_NO_DEPRECATE
#endif
/* Deal with Microsoft's attempt at deprecating methods in the standard C++ library */
#if !defined(SWIG_NO_SCL_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_SCL_SECURE_NO_DEPRECATE)
# define _SCL_SECURE_NO_DEPRECATE
#endif
/* -----------------------------------------------------------------------------
* This section contains generic SWIG labels for method/variable
* declarations/attributes, and other compiler dependent labels.
* ----------------------------------------------------------------------------- */
/* template workaround for compilers that cannot correctly implement the C++ standard */
#ifndef SWIGTEMPLATEDISAMBIGUATOR
# if defined(__SUNPRO_CC) && (__SUNPRO_CC <= 0x560)
# define SWIGTEMPLATEDISAMBIGUATOR template
# elif defined(__HP_aCC)
/* Needed even with `aCC -AA' when `aCC -V' reports HP ANSI C++ B3910B A.03.55 */
/* If we find a maximum version that requires this, the test would be __HP_aCC <= 35500 for A.03.55 */
# define SWIGTEMPLATEDISAMBIGUATOR template
# else
# define SWIGTEMPLATEDISAMBIGUATOR
# endif
#endif
/* inline attribute */
#ifndef SWIGINLINE
# if defined(__cplusplus) || (defined(__GNUC__) && !defined(__STRICT_ANSI__))
# define SWIGINLINE inline
# else
# define SWIGINLINE
# endif
#endif
/* attribute recognised by some compilers to avoid 'unused' warnings */
#ifndef SWIGUNUSED
# if defined(__GNUC__)
# if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
# define SWIGUNUSED __attribute__ ((__unused__))
# else
# define SWIGUNUSED
# endif
# elif defined(__ICC)
# define SWIGUNUSED __attribute__ ((__unused__))
# else
# define SWIGUNUSED
# endif
#endif
#ifndef SWIG_MSC_UNSUPPRESS_4505
# if defined(_MSC_VER)
# pragma warning(disable : 4505) /* unreferenced local function has been removed */
# endif
#endif
#ifndef SWIGUNUSEDPARM
# ifdef __cplusplus
# define SWIGUNUSEDPARM(p)
# else
# define SWIGUNUSEDPARM(p) p SWIGUNUSED
# endif
#endif
/* internal SWIG method */
#ifndef SWIGINTERN
# define SWIGINTERN static SWIGUNUSED
#endif
/* internal inline SWIG method */
#ifndef SWIGINTERNINLINE
# define SWIGINTERNINLINE SWIGINTERN SWIGINLINE
#endif
/* exporting methods */
#if (__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)
# ifndef GCC_HASCLASSVISIBILITY
# define GCC_HASCLASSVISIBILITY
# endif
#endif
#ifndef SWIGEXPORT
# if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
# if defined(STATIC_LINKED)
# define SWIGEXPORT
# else
# define SWIGEXPORT __declspec(dllexport)
# endif
# else
# if defined(__GNUC__) && defined(GCC_HASCLASSVISIBILITY)
# define SWIGEXPORT __attribute__ ((visibility("default")))
# else
# define SWIGEXPORT
# endif
# endif
#endif
/* calling conventions for Windows */
#ifndef SWIGSTDCALL
# if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
# define SWIGSTDCALL __stdcall
# else
# define SWIGSTDCALL
# endif
#endif
/* Deal with Microsoft's attempt at deprecating C standard runtime functions */
#if !defined(SWIG_NO_CRT_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_CRT_SECURE_NO_DEPRECATE)
# define _CRT_SECURE_NO_DEPRECATE
#endif
/* Deal with Microsoft's attempt at deprecating methods in the standard C++ library */
#if !defined(SWIG_NO_SCL_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_SCL_SECURE_NO_DEPRECATE)
# define _SCL_SECURE_NO_DEPRECATE
#endif
#include <stdlib.h>
@ -202,7 +202,7 @@ static SWIG_CSharpException_t SWIG_csharp_exceptions[] = {
static SWIG_CSharpExceptionArgument_t SWIG_csharp_exceptions_argument[] = {
{ SWIG_CSharpArgumentException, NULL },
{ SWIG_CSharpArgumentNullException, NULL },
{ SWIG_CSharpArgumentOutOfRangeException, NULL },
{ SWIG_CSharpArgumentOutOfRangeException, NULL }
};
static void SWIGUNUSED SWIG_CSharpSetPendingException(SWIG_CSharpExceptionCodes code, const char *msg) {
@ -280,61 +280,63 @@ SWIGEXPORT void SWIGSTDCALL SWIGRegisterStringCallback_tinyWRAP(SWIG_CSharpStrin
#define SWIG_contract_assert(nullreturn, expr, msg) if (!(expr)) {SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentOutOfRangeException, msg, ""); return nullreturn; } else
/* -----------------------------------------------------------------------------
* See the LICENSE file for information on copyright, usage and redistribution
* of SWIG, and the README file for authors - http://www.swig.org/release.html.
*
* director.swg
*
* This file contains support for director classes so that C# proxy
* methods can be called from C++.
* ----------------------------------------------------------------------------- */
#ifdef __cplusplus
#if defined(DEBUG_DIRECTOR_OWNED)
#include <iostream>
#endif
#include <string>
namespace Swig {
/* Director base class - not currently used in C# directors */
class Director {
};
/* Base class for director exceptions */
class DirectorException {
protected:
std::string swig_msg;
public:
DirectorException(const char* msg) : swig_msg(msg) {
}
DirectorException(const std::string &msg) : swig_msg(msg) {
}
const std::string& what() const {
return swig_msg;
}
virtual ~DirectorException() {
}
};
/* Pure virtual method exception */
class DirectorPureVirtualException : public Swig::DirectorException {
public:
DirectorPureVirtualException(const char* msg) : DirectorException(std::string("Attempt to invoke pure virtual method ") + msg) {
}
};
}
#endif /* __cplusplus */
/* -----------------------------------------------------------------------------
* See the LICENSE file for information on copyright, usage and redistribution
* of SWIG, and the README file for authors - http://www.swig.org/release.html.
*
* director.swg
*
* This file contains support for director classes so that C# proxy
* methods can be called from C++.
* ----------------------------------------------------------------------------- */
#ifdef __cplusplus
#if defined(DEBUG_DIRECTOR_OWNED)
#include <iostream>
#endif
#include <string>
namespace Swig {
/* Director base class - not currently used in C# directors */
class Director {
};
/* Base class for director exceptions */
class DirectorException {
protected:
std::string swig_msg;
public:
DirectorException(const char* msg) : swig_msg(msg) {
}
DirectorException(const std::string &msg) : swig_msg(msg) {
}
const std::string& what() const {
return swig_msg;
}
virtual ~DirectorException() {
}
};
/* Pure virtual method exception */
class DirectorPureVirtualException : public Swig::DirectorException {
public:
DirectorPureVirtualException(const char* msg) : DirectorException(std::string("Attempt to invoke pure virtual method ") + msg) {
}
};
}
#endif /* __cplusplus */
#include "SipUri.h"
#include "SipMessage.h"
#include "SipEvent.h"
#include "SipSession.h"
#include "PublicationEvent.h"
#include "PublicationSession.h"
#include "RegistrationEvent.h"
#include "RegistrationSession.h"
#include "SubscriptionEvent.h"
@ -391,14 +393,31 @@ int SwigDirector_SipCallback::OnSubscriptionChanged(SubscriptionEvent const *e)
return c_result;
}
void SwigDirector_SipCallback::swig_connect_director(SWIG_Callback0_t callbackOnRegistrationChanged, SWIG_Callback1_t callbackOnSubscriptionChanged) {
int SwigDirector_SipCallback::OnPublicationChanged(PublicationEvent const *e) {
int c_result = SwigValueInit< int >() ;
int jresult = 0 ;
void * je = 0 ;
if (!swig_callbackOnPublicationChanged) {
return SipCallback::OnPublicationChanged(e);
} else {
je = (void *) e;
jresult = (int) swig_callbackOnPublicationChanged(je);
c_result = (int)jresult;
}
return c_result;
}
void SwigDirector_SipCallback::swig_connect_director(SWIG_Callback0_t callbackOnRegistrationChanged, SWIG_Callback1_t callbackOnSubscriptionChanged, SWIG_Callback2_t callbackOnPublicationChanged) {
swig_callbackOnRegistrationChanged = callbackOnRegistrationChanged;
swig_callbackOnSubscriptionChanged = callbackOnSubscriptionChanged;
swig_callbackOnPublicationChanged = callbackOnPublicationChanged;
}
void SwigDirector_SipCallback::swig_init_callbacks() {
swig_callbackOnRegistrationChanged = 0;
swig_callbackOnSubscriptionChanged = 0;
swig_callbackOnPublicationChanged = 0;
}
SwigDirector_SipDebugCallback::SwigDirector_SipDebugCallback() : SipDebugCallback(), Swig::Director() {
@ -551,18 +570,6 @@ SWIGEXPORT void SWIGSTDCALL CSharp_delete_SipMessage(void * jarg1) {
}
SWIGEXPORT void * SWIGSTDCALL CSharp_SipMessage_getSipContent(void * jarg1) {
void * jresult ;
SipMessage *arg1 = (SipMessage *) 0 ;
void *result = 0 ;
arg1 = (SipMessage *)jarg1;
result = (void *)((SipMessage const *)arg1)->getSipContent();
jresult = result;
return jresult;
}
SWIGEXPORT char * SWIGSTDCALL CSharp_SipMessage_getSipHeaderValue__SWIG_0(void * jarg1, char * jarg2, unsigned int jarg3) {
char * jresult ;
SipMessage *arg1 = (SipMessage *) 0 ;
@ -831,6 +838,96 @@ SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipSession_setToUri(void * jarg1, cha
}
SWIGEXPORT void * SWIGSTDCALL CSharp_new_PublicationEvent() {
void * jresult ;
PublicationEvent *result = 0 ;
result = (PublicationEvent *)new PublicationEvent();
jresult = (void *)result;
return jresult;
}
SWIGEXPORT void SWIGSTDCALL CSharp_delete_PublicationEvent(void * jarg1) {
PublicationEvent *arg1 = (PublicationEvent *) 0 ;
arg1 = (PublicationEvent *)jarg1;
delete arg1;
}
SWIGEXPORT int SWIGSTDCALL CSharp_PublicationEvent_getType(void * jarg1) {
int jresult ;
PublicationEvent *arg1 = (PublicationEvent *) 0 ;
tsip_publish_event_type_t result;
arg1 = (PublicationEvent *)jarg1;
result = (tsip_publish_event_type_t)((PublicationEvent const *)arg1)->getType();
jresult = result;
return jresult;
}
SWIGEXPORT void * SWIGSTDCALL CSharp_PublicationEvent_getSession(void * jarg1) {
void * jresult ;
PublicationEvent *arg1 = (PublicationEvent *) 0 ;
PublicationSession *result = 0 ;
arg1 = (PublicationEvent *)jarg1;
result = (PublicationSession *)((PublicationEvent const *)arg1)->getSession();
jresult = (void *)result;
return jresult;
}
SWIGEXPORT void * SWIGSTDCALL CSharp_new_PublicationSession(void * jarg1) {
void * jresult ;
SipStack *arg1 = (SipStack *) 0 ;
PublicationSession *result = 0 ;
arg1 = (SipStack *)jarg1;
result = (PublicationSession *)new PublicationSession(arg1);
jresult = (void *)result;
return jresult;
}
SWIGEXPORT void SWIGSTDCALL CSharp_delete_PublicationSession(void * jarg1) {
PublicationSession *arg1 = (PublicationSession *) 0 ;
arg1 = (PublicationSession *)jarg1;
delete arg1;
}
SWIGEXPORT unsigned int SWIGSTDCALL CSharp_PublicationSession_Publish(void * jarg1, void * jarg2, unsigned int jarg3) {
unsigned int jresult ;
PublicationSession *arg1 = (PublicationSession *) 0 ;
void *arg2 = (void *) 0 ;
unsigned int arg3 ;
bool result;
arg1 = (PublicationSession *)jarg1;
arg2 = jarg2;
arg3 = (unsigned int)jarg3;
result = (bool)(arg1)->Publish((void const *)arg2,arg3);
jresult = result;
return jresult;
}
SWIGEXPORT unsigned int SWIGSTDCALL CSharp_PublicationSession_UnPublish(void * jarg1) {
unsigned int jresult ;
PublicationSession *arg1 = (PublicationSession *) 0 ;
bool result;
arg1 = (PublicationSession *)jarg1;
result = (bool)(arg1)->UnPublish();
jresult = result;
return jresult;
}
SWIGEXPORT void * SWIGSTDCALL CSharp_new_RegistrationEvent() {
void * jresult ;
RegistrationEvent *result = 0 ;
@ -1077,11 +1174,39 @@ SWIGEXPORT int SWIGSTDCALL CSharp_SipCallback_OnSubscriptionChangedSwigExplicitS
}
SWIGEXPORT void SWIGSTDCALL CSharp_SipCallback_director_connect(void *objarg, SwigDirector_SipCallback::SWIG_Callback0_t callback0, SwigDirector_SipCallback::SWIG_Callback1_t callback1) {
SWIGEXPORT int SWIGSTDCALL CSharp_SipCallback_OnPublicationChanged(void * jarg1, void * jarg2) {
int jresult ;
SipCallback *arg1 = (SipCallback *) 0 ;
PublicationEvent *arg2 = (PublicationEvent *) 0 ;
int result;
arg1 = (SipCallback *)jarg1;
arg2 = (PublicationEvent *)jarg2;
result = (int)(arg1)->OnPublicationChanged((PublicationEvent const *)arg2);
jresult = result;
return jresult;
}
SWIGEXPORT int SWIGSTDCALL CSharp_SipCallback_OnPublicationChangedSwigExplicitSipCallback(void * jarg1, void * jarg2) {
int jresult ;
SipCallback *arg1 = (SipCallback *) 0 ;
PublicationEvent *arg2 = (PublicationEvent *) 0 ;
int result;
arg1 = (SipCallback *)jarg1;
arg2 = (PublicationEvent *)jarg2;
result = (int)(arg1)->SipCallback::OnPublicationChanged((PublicationEvent const *)arg2);
jresult = result;
return jresult;
}
SWIGEXPORT void SWIGSTDCALL CSharp_SipCallback_director_connect(void *objarg, SwigDirector_SipCallback::SWIG_Callback0_t callback0, SwigDirector_SipCallback::SWIG_Callback1_t callback1, SwigDirector_SipCallback::SWIG_Callback2_t callback2) {
SipCallback *obj = (SipCallback *)objarg;
SwigDirector_SipCallback *director = dynamic_cast<SwigDirector_SipCallback *>(obj);
if (director) {
director->swig_connect_director(callback0, callback1);
director->swig_connect_director(callback0, callback1, callback2);
}
}
@ -1505,6 +1630,14 @@ SWIGEXPORT unsigned int SWIGSTDCALL CSharp_SipStack_stop(void * jarg1) {
}
SWIGEXPORT SipEvent * SWIGSTDCALL CSharp_PublicationEventUpcast(PublicationEvent *objectRef) {
return (SipEvent *)objectRef;
}
SWIGEXPORT SipSession * SWIGSTDCALL CSharp_PublicationSessionUpcast(PublicationSession *objectRef) {
return (SipSession *)objectRef;
}
SWIGEXPORT SipEvent * SWIGSTDCALL CSharp_RegistrationEventUpcast(RegistrationEvent *objectRef) {
return (SipEvent *)objectRef;
}

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* This file is not intended to be easily readable and contains a number of
* coding conventions designed to improve portability and efficiency. Do not make
@ -18,14 +18,17 @@ public:
virtual ~SwigDirector_SipCallback();
virtual int OnRegistrationChanged(RegistrationEvent const *e);
virtual int OnSubscriptionChanged(SubscriptionEvent const *e);
virtual int OnPublicationChanged(PublicationEvent const *e);
typedef int (SWIGSTDCALL* SWIG_Callback0_t)(void *);
typedef int (SWIGSTDCALL* SWIG_Callback1_t)(void *);
void swig_connect_director(SWIG_Callback0_t callbackOnRegistrationChanged, SWIG_Callback1_t callbackOnSubscriptionChanged);
typedef int (SWIGSTDCALL* SWIG_Callback2_t)(void *);
void swig_connect_director(SWIG_Callback0_t callbackOnRegistrationChanged, SWIG_Callback1_t callbackOnSubscriptionChanged, SWIG_Callback2_t callbackOnPublicationChanged);
private:
SWIG_Callback0_t swig_callbackOnRegistrationChanged;
SWIG_Callback1_t swig_callbackOnSubscriptionChanged;
SWIG_Callback2_t swig_callbackOnPublicationChanged;
void swig_init_callbacks();
};

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.

View File

@ -0,0 +1,19 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.
* ----------------------------------------------------------------------------- */
public enum tsip_publish_event_type_t {
tsip_i_publish,
tsip_ai_publish,
tsip_o_publish,
tsip_ao_publish,
tsip_i_unpublish,
tsip_ai_unpublish,
tsip_o_unpublish,
tsip_ao_unpublish
}

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.

View File

@ -0,0 +1,51 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.
* ----------------------------------------------------------------------------- */
package org.doubango.tinyWRAP;
public class PublicationEvent extends SipEvent {
private long swigCPtr;
protected PublicationEvent(long cPtr, boolean cMemoryOwn) {
super(tinyWRAPJNI.SWIGPublicationEventUpcast(cPtr), cMemoryOwn);
swigCPtr = cPtr;
}
protected static long getCPtr(PublicationEvent obj) {
return (obj == null) ? 0 : obj.swigCPtr;
}
protected void finalize() {
delete();
}
public synchronized void delete() {
if (swigCPtr != 0) {
if (swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPJNI.delete_PublicationEvent(swigCPtr);
}
swigCPtr = 0;
}
super.delete();
}
public PublicationEvent() {
this(tinyWRAPJNI.new_PublicationEvent(), true);
}
public tsip_publish_event_type_t getType() {
return tsip_publish_event_type_t.swigToEnum(tinyWRAPJNI.PublicationEvent_getType(swigCPtr, this));
}
public PublicationSession getSession() {
long cPtr = tinyWRAPJNI.PublicationEvent_getSession(swigCPtr, this);
return (cPtr == 0) ? null : new PublicationSession(cPtr, false);
}
}

View File

@ -0,0 +1,50 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.
* ----------------------------------------------------------------------------- */
package org.doubango.tinyWRAP;
public class PublicationSession extends SipSession {
private long swigCPtr;
protected PublicationSession(long cPtr, boolean cMemoryOwn) {
super(tinyWRAPJNI.SWIGPublicationSessionUpcast(cPtr), cMemoryOwn);
swigCPtr = cPtr;
}
protected static long getCPtr(PublicationSession obj) {
return (obj == null) ? 0 : obj.swigCPtr;
}
protected void finalize() {
delete();
}
public synchronized void delete() {
if (swigCPtr != 0) {
if (swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPJNI.delete_PublicationSession(swigCPtr);
}
swigCPtr = 0;
}
super.delete();
}
public PublicationSession(SipStack Stack) {
this(tinyWRAPJNI.new_PublicationSession(SipStack.getCPtr(Stack), Stack), true);
}
public boolean Publish(byte[] payload, long len) {
return tinyWRAPJNI.PublicationSession_Publish(swigCPtr, this, payload, len);
}
public boolean UnPublish() {
return tinyWRAPJNI.PublicationSession_UnPublish(swigCPtr, this);
}
}

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.
@ -25,11 +25,13 @@ public class RegistrationEvent extends SipEvent {
}
public synchronized void delete() {
if(swigCPtr != 0 && swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPJNI.delete_RegistrationEvent(swigCPtr);
if (swigCPtr != 0) {
if (swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPJNI.delete_RegistrationEvent(swigCPtr);
}
swigCPtr = 0;
}
swigCPtr = 0;
super.delete();
}

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.
@ -25,11 +25,13 @@ public class RegistrationSession extends SipSession {
}
public synchronized void delete() {
if(swigCPtr != 0 && swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPJNI.delete_RegistrationSession(swigCPtr);
if (swigCPtr != 0) {
if (swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPJNI.delete_RegistrationSession(swigCPtr);
}
swigCPtr = 0;
}
swigCPtr = 0;
super.delete();
}

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.
@ -26,11 +26,13 @@ public class SafeObject {
}
public synchronized void delete() {
if(swigCPtr != 0 && swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPJNI.delete_SafeObject(swigCPtr);
if (swigCPtr != 0) {
if (swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPJNI.delete_SafeObject(swigCPtr);
}
swigCPtr = 0;
}
swigCPtr = 0;
}
public SafeObject() {

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.
@ -26,11 +26,13 @@ public class SipCallback {
}
public synchronized void delete() {
if(swigCPtr != 0 && swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPJNI.delete_SipCallback(swigCPtr);
if (swigCPtr != 0) {
if (swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPJNI.delete_SipCallback(swigCPtr);
}
swigCPtr = 0;
}
swigCPtr = 0;
}
protected void swigDirectorDisconnect() {
@ -61,4 +63,8 @@ public class SipCallback {
return (getClass() == SipCallback.class) ? tinyWRAPJNI.SipCallback_OnSubscriptionChanged(swigCPtr, this, SubscriptionEvent.getCPtr(e), e) : tinyWRAPJNI.SipCallback_OnSubscriptionChangedSwigExplicitSipCallback(swigCPtr, this, SubscriptionEvent.getCPtr(e), e);
}
public int OnPublicationChanged(PublicationEvent e) {
return (getClass() == SipCallback.class) ? tinyWRAPJNI.SipCallback_OnPublicationChanged(swigCPtr, this, PublicationEvent.getCPtr(e), e) : tinyWRAPJNI.SipCallback_OnPublicationChangedSwigExplicitSipCallback(swigCPtr, this, PublicationEvent.getCPtr(e), e);
}
}

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.
@ -26,11 +26,13 @@ public class SipDebugCallback {
}
public synchronized void delete() {
if(swigCPtr != 0 && swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPJNI.delete_SipDebugCallback(swigCPtr);
if (swigCPtr != 0) {
if (swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPJNI.delete_SipDebugCallback(swigCPtr);
}
swigCPtr = 0;
}
swigCPtr = 0;
}
protected void swigDirectorDisconnect() {

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.
@ -26,11 +26,13 @@ public class SipEvent {
}
public synchronized void delete() {
if(swigCPtr != 0 && swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPJNI.delete_SipEvent(swigCPtr);
if (swigCPtr != 0) {
if (swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPJNI.delete_SipEvent(swigCPtr);
}
swigCPtr = 0;
}
swigCPtr = 0;
}
public SipEvent() {

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.
@ -26,19 +26,19 @@ public class SipMessage {
}
public synchronized void delete() {
if(swigCPtr != 0 && swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPJNI.delete_SipMessage(swigCPtr);
if (swigCPtr != 0) {
if (swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPJNI.delete_SipMessage(swigCPtr);
}
swigCPtr = 0;
}
swigCPtr = 0;
}
public SipMessage() {
this(tinyWRAPJNI.new_SipMessage(), true);
}
public byte[] getSipContent() { return tinyWRAPJNI.SipMessage_getSipContent(swigCPtr, this); }
public String getSipHeaderValue(String name, long index) {
return tinyWRAPJNI.SipMessage_getSipHeaderValue__SWIG_0(swigCPtr, this, name, index);
}

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.
@ -26,11 +26,13 @@ public class SipSession {
}
public synchronized void delete() {
if(swigCPtr != 0 && swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPJNI.delete_SipSession(swigCPtr);
if (swigCPtr != 0) {
if (swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPJNI.delete_SipSession(swigCPtr);
}
swigCPtr = 0;
}
swigCPtr = 0;
}
public SipSession(SipStack stack) {

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.
@ -25,11 +25,13 @@ public class SipStack extends SafeObject {
}
public synchronized void delete() {
if(swigCPtr != 0 && swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPJNI.delete_SipStack(swigCPtr);
if (swigCPtr != 0) {
if (swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPJNI.delete_SipStack(swigCPtr);
}
swigCPtr = 0;
}
swigCPtr = 0;
super.delete();
}

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.
@ -26,11 +26,13 @@ public class SipUri {
}
public synchronized void delete() {
if(swigCPtr != 0 && swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPJNI.delete_SipUri(swigCPtr);
if (swigCPtr != 0) {
if (swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPJNI.delete_SipUri(swigCPtr);
}
swigCPtr = 0;
}
swigCPtr = 0;
}
public SipUri(String arg0) {

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.
@ -25,11 +25,13 @@ public class SubscriptionEvent extends SipEvent {
}
public synchronized void delete() {
if(swigCPtr != 0 && swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPJNI.delete_SubscriptionEvent(swigCPtr);
if (swigCPtr != 0) {
if (swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPJNI.delete_SubscriptionEvent(swigCPtr);
}
swigCPtr = 0;
}
swigCPtr = 0;
super.delete();
}

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.
@ -25,11 +25,13 @@ public class SubscriptionSession extends SipSession {
}
public synchronized void delete() {
if(swigCPtr != 0 && swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPJNI.delete_SubscriptionSession(swigCPtr);
if (swigCPtr != 0) {
if (swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPJNI.delete_SubscriptionSession(swigCPtr);
}
swigCPtr = 0;
}
swigCPtr = 0;
super.delete();
}

View File

@ -0,0 +1,51 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.
* ----------------------------------------------------------------------------- */
package org.doubango.tinyWRAP;
public class PublicationEvent extends SipEvent {
private long swigCPtr;
protected PublicationEvent(long cPtr, boolean cMemoryOwn) {
super(tinyWRAPJNI.SWIGPublicationEventUpcast(cPtr), cMemoryOwn);
swigCPtr = cPtr;
}
protected static long getCPtr(PublicationEvent obj) {
return (obj == null) ? 0 : obj.swigCPtr;
}
protected void finalize() {
delete();
}
public synchronized void delete() {
if (swigCPtr != 0) {
if (swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPJNI.delete_PublicationEvent(swigCPtr);
}
swigCPtr = 0;
}
super.delete();
}
public PublicationEvent() {
this(tinyWRAPJNI.new_PublicationEvent(), true);
}
public tsip_publish_event_type_t getType() {
return tsip_publish_event_type_t.swigToEnum(tinyWRAPJNI.PublicationEvent_getType(swigCPtr, this));
}
public PublicationSession getSession() {
long cPtr = tinyWRAPJNI.PublicationEvent_getSession(swigCPtr, this);
return (cPtr == 0) ? null : new PublicationSession(cPtr, false);
}
}

View File

@ -0,0 +1,50 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.
* ----------------------------------------------------------------------------- */
package org.doubango.tinyWRAP;
public class PublicationSession extends SipSession {
private long swigCPtr;
protected PublicationSession(long cPtr, boolean cMemoryOwn) {
super(tinyWRAPJNI.SWIGPublicationSessionUpcast(cPtr), cMemoryOwn);
swigCPtr = cPtr;
}
protected static long getCPtr(PublicationSession obj) {
return (obj == null) ? 0 : obj.swigCPtr;
}
protected void finalize() {
delete();
}
public synchronized void delete() {
if (swigCPtr != 0) {
if (swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPJNI.delete_PublicationSession(swigCPtr);
}
swigCPtr = 0;
}
super.delete();
}
public PublicationSession(SipStack Stack) {
this(tinyWRAPJNI.new_PublicationSession(SipStack.getCPtr(Stack), Stack), true);
}
public boolean Publish(byte[] payload, long len) {
return tinyWRAPJNI.PublicationSession_Publish(swigCPtr, this, payload, len);
}
public boolean UnPublish() {
return tinyWRAPJNI.PublicationSession_UnPublish(swigCPtr, this);
}
}

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.
@ -25,11 +25,13 @@ public class RegistrationEvent extends SipEvent {
}
public synchronized void delete() {
if(swigCPtr != 0 && swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPJNI.delete_RegistrationEvent(swigCPtr);
if (swigCPtr != 0) {
if (swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPJNI.delete_RegistrationEvent(swigCPtr);
}
swigCPtr = 0;
}
swigCPtr = 0;
super.delete();
}

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.
@ -25,11 +25,13 @@ public class RegistrationSession extends SipSession {
}
public synchronized void delete() {
if(swigCPtr != 0 && swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPJNI.delete_RegistrationSession(swigCPtr);
if (swigCPtr != 0) {
if (swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPJNI.delete_RegistrationSession(swigCPtr);
}
swigCPtr = 0;
}
swigCPtr = 0;
super.delete();
}

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.
@ -26,11 +26,13 @@ public class SafeObject {
}
public synchronized void delete() {
if(swigCPtr != 0 && swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPJNI.delete_SafeObject(swigCPtr);
if (swigCPtr != 0) {
if (swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPJNI.delete_SafeObject(swigCPtr);
}
swigCPtr = 0;
}
swigCPtr = 0;
}
public SafeObject() {

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.
@ -26,11 +26,13 @@ public class SipCallback {
}
public synchronized void delete() {
if(swigCPtr != 0 && swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPJNI.delete_SipCallback(swigCPtr);
if (swigCPtr != 0) {
if (swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPJNI.delete_SipCallback(swigCPtr);
}
swigCPtr = 0;
}
swigCPtr = 0;
}
protected void swigDirectorDisconnect() {
@ -61,4 +63,8 @@ public class SipCallback {
return (getClass() == SipCallback.class) ? tinyWRAPJNI.SipCallback_OnSubscriptionChanged(swigCPtr, this, SubscriptionEvent.getCPtr(e), e) : tinyWRAPJNI.SipCallback_OnSubscriptionChangedSwigExplicitSipCallback(swigCPtr, this, SubscriptionEvent.getCPtr(e), e);
}
public int OnPublicationChanged(PublicationEvent e) {
return (getClass() == SipCallback.class) ? tinyWRAPJNI.SipCallback_OnPublicationChanged(swigCPtr, this, PublicationEvent.getCPtr(e), e) : tinyWRAPJNI.SipCallback_OnPublicationChangedSwigExplicitSipCallback(swigCPtr, this, PublicationEvent.getCPtr(e), e);
}
}

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.
@ -26,11 +26,13 @@ public class SipDebugCallback {
}
public synchronized void delete() {
if(swigCPtr != 0 && swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPJNI.delete_SipDebugCallback(swigCPtr);
if (swigCPtr != 0) {
if (swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPJNI.delete_SipDebugCallback(swigCPtr);
}
swigCPtr = 0;
}
swigCPtr = 0;
}
protected void swigDirectorDisconnect() {

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.
@ -26,11 +26,13 @@ public class SipEvent {
}
public synchronized void delete() {
if(swigCPtr != 0 && swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPJNI.delete_SipEvent(swigCPtr);
if (swigCPtr != 0) {
if (swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPJNI.delete_SipEvent(swigCPtr);
}
swigCPtr = 0;
}
swigCPtr = 0;
}
public SipEvent() {

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.
@ -26,19 +26,19 @@ public class SipMessage {
}
public synchronized void delete() {
if(swigCPtr != 0 && swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPJNI.delete_SipMessage(swigCPtr);
if (swigCPtr != 0) {
if (swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPJNI.delete_SipMessage(swigCPtr);
}
swigCPtr = 0;
}
swigCPtr = 0;
}
public SipMessage() {
this(tinyWRAPJNI.new_SipMessage(), true);
}
public byte[] getSipContent() { return tinyWRAPJNI.SipMessage_getSipContent(swigCPtr, this); }
public String getSipHeaderValue(String name, long index) {
return tinyWRAPJNI.SipMessage_getSipHeaderValue__SWIG_0(swigCPtr, this, name, index);
}

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.
@ -26,11 +26,13 @@ public class SipSession {
}
public synchronized void delete() {
if(swigCPtr != 0 && swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPJNI.delete_SipSession(swigCPtr);
if (swigCPtr != 0) {
if (swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPJNI.delete_SipSession(swigCPtr);
}
swigCPtr = 0;
}
swigCPtr = 0;
}
public SipSession(SipStack stack) {

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.
@ -25,11 +25,13 @@ public class SipStack extends SafeObject {
}
public synchronized void delete() {
if(swigCPtr != 0 && swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPJNI.delete_SipStack(swigCPtr);
if (swigCPtr != 0) {
if (swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPJNI.delete_SipStack(swigCPtr);
}
swigCPtr = 0;
}
swigCPtr = 0;
super.delete();
}

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.
@ -26,11 +26,13 @@ public class SipUri {
}
public synchronized void delete() {
if(swigCPtr != 0 && swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPJNI.delete_SipUri(swigCPtr);
if (swigCPtr != 0) {
if (swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPJNI.delete_SipUri(swigCPtr);
}
swigCPtr = 0;
}
swigCPtr = 0;
}
public SipUri(String arg0) {

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.
@ -25,11 +25,13 @@ public class SubscriptionEvent extends SipEvent {
}
public synchronized void delete() {
if(swigCPtr != 0 && swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPJNI.delete_SubscriptionEvent(swigCPtr);
if (swigCPtr != 0) {
if (swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPJNI.delete_SubscriptionEvent(swigCPtr);
}
swigCPtr = 0;
}
swigCPtr = 0;
super.delete();
}

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.
@ -25,11 +25,13 @@ public class SubscriptionSession extends SipSession {
}
public synchronized void delete() {
if(swigCPtr != 0 && swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPJNI.delete_SubscriptionSession(swigCPtr);
if (swigCPtr != 0) {
if (swigCMemOwn) {
swigCMemOwn = false;
tinyWRAPJNI.delete_SubscriptionSession(swigCPtr);
}
swigCPtr = 0;
}
swigCPtr = 0;
super.delete();
}

View File

@ -9,12 +9,15 @@ all: $(APP)
OBJS = tinyWRAP_wrap.o\
../../_common/MessagingEvent.o \
../../_common/PublicationEvent.o \
../../_common/PublicationSession.o \
../../_common/RegistrationEvent.o \
../../_common/RegistrationSession.o \
../../_common/SafeObject.o \
../../_common/SipCallback.o \
../../_common/SipDebug.o \
../../_common/SipEvent.o \
../../_common/SipMessage.o \
../../_common/SipSession.o \
../../_common/SipStack.o \
../../_common/SipUri.o \

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.
@ -15,7 +15,6 @@ class tinyWRAPJNI {
public final static native boolean SipUri_isValid__SWIG_1(long jarg1, SipUri jarg1_);
public final static native long new_SipMessage();
public final static native void delete_SipMessage(long jarg1);
public final static native byte[] SipMessage_getSipContent(long jarg1, SipMessage jarg1_);
public final static native String SipMessage_getSipHeaderValue__SWIG_0(long jarg1, SipMessage jarg1_, String jarg2, long jarg3);
public final static native String SipMessage_getSipHeaderValue__SWIG_1(long jarg1, SipMessage jarg1_, String jarg2);
public final static native String SipMessage_getSipHeaderParamValue__SWIG_0(long jarg1, SipMessage jarg1_, String jarg2, String jarg3, long jarg4);
@ -36,6 +35,14 @@ class tinyWRAPJNI {
public final static native boolean SipSession_setExpires(long jarg1, SipSession jarg1_, long jarg2);
public final static native boolean SipSession_setFromUri(long jarg1, SipSession jarg1_, String jarg2);
public final static native boolean SipSession_setToUri(long jarg1, SipSession jarg1_, String jarg2);
public final static native long new_PublicationEvent();
public final static native void delete_PublicationEvent(long jarg1);
public final static native int PublicationEvent_getType(long jarg1, PublicationEvent jarg1_);
public final static native long PublicationEvent_getSession(long jarg1, PublicationEvent jarg1_);
public final static native long new_PublicationSession(long jarg1, SipStack jarg1_);
public final static native void delete_PublicationSession(long jarg1);
public final static native boolean PublicationSession_Publish(long jarg1, PublicationSession jarg1_, byte[] jarg2, long jarg3);
public final static native boolean PublicationSession_UnPublish(long jarg1, PublicationSession jarg1_);
public final static native long new_RegistrationEvent();
public final static native void delete_RegistrationEvent(long jarg1);
public final static native int RegistrationEvent_getType(long jarg1, RegistrationEvent jarg1_);
@ -58,6 +65,8 @@ class tinyWRAPJNI {
public final static native int SipCallback_OnRegistrationChangedSwigExplicitSipCallback(long jarg1, SipCallback jarg1_, long jarg2, RegistrationEvent jarg2_);
public final static native int SipCallback_OnSubscriptionChanged(long jarg1, SipCallback jarg1_, long jarg2, SubscriptionEvent jarg2_);
public final static native int SipCallback_OnSubscriptionChangedSwigExplicitSipCallback(long jarg1, SipCallback jarg1_, long jarg2, SubscriptionEvent jarg2_);
public final static native int SipCallback_OnPublicationChanged(long jarg1, SipCallback jarg1_, long jarg2, PublicationEvent jarg2_);
public final static native int SipCallback_OnPublicationChangedSwigExplicitSipCallback(long jarg1, SipCallback jarg1_, long jarg2, PublicationEvent jarg2_);
public final static native void SipCallback_director_connect(SipCallback obj, long cptr, boolean mem_own, boolean weak_global);
public final static native void SipCallback_change_ownership(SipCallback obj, long cptr, boolean take_or_release);
public final static native long new_SipDebugCallback();
@ -93,6 +102,8 @@ class tinyWRAPJNI {
public final static native boolean SipStack_addDnsServer(long jarg1, SipStack jarg1_, String jarg2);
public final static native boolean SipStack_isValid(long jarg1, SipStack jarg1_);
public final static native boolean SipStack_stop(long jarg1, SipStack jarg1_);
public final static native long SWIGPublicationEventUpcast(long jarg1);
public final static native long SWIGPublicationSessionUpcast(long jarg1);
public final static native long SWIGRegistrationEventUpcast(long jarg1);
public final static native long SWIGRegistrationSessionUpcast(long jarg1);
public final static native long SWIGSubscriptionEventUpcast(long jarg1);
@ -105,6 +116,9 @@ class tinyWRAPJNI {
public static int SwigDirector_SipCallback_OnSubscriptionChanged(SipCallback self, long e) {
return self.OnSubscriptionChanged((e == 0) ? null : new SubscriptionEvent(e, false));
}
public static int SwigDirector_SipCallback_OnPublicationChanged(SipCallback self, long e) {
return self.OnPublicationChanged((e == 0) ? null : new PublicationEvent(e, false));
}
public static int SwigDirector_SipDebugCallback_OnDebugInfo(SipDebugCallback self, String message) {
return self.OnDebugInfo(message);
}

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* This file is not intended to be easily readable and contains a number of
* coding conventions designed to improve portability and efficiency. Do not make
@ -193,7 +193,8 @@ static void SWIGUNUSED SWIG_JavaThrowException(JNIEnv *jenv, SWIG_JavaExceptionC
{ SWIG_JavaNullPointerException, "java/lang/NullPointerException" },
{ SWIG_JavaDirectorPureVirtual, "java/lang/RuntimeException" },
{ SWIG_JavaUnknownError, "java/lang/UnknownError" },
{ (SWIG_JavaExceptionCodes)0, "java/lang/UnknownError" } };
{ (SWIG_JavaExceptionCodes)0, "java/lang/UnknownError" }
};
const SWIG_JavaExceptions_t *except_ptr = java_exceptions;
while (except_ptr->code != code && except_ptr->code)
@ -403,13 +404,15 @@ namespace Swig {
namespace Swig {
static jclass jclass_tinyWRAPJNI = NULL;
static jmethodID director_methids[6];
static jmethodID director_methids[7];
}
#include "SipUri.h"
#include "SipMessage.h"
#include "SipEvent.h"
#include "SipSession.h"
#include "PublicationEvent.h"
#include "PublicationSession.h"
#include "RegistrationEvent.h"
#include "RegistrationSession.h"
#include "SubscriptionEvent.h"
@ -483,6 +486,30 @@ int SwigDirector_SipCallback::OnSubscriptionChanged(SubscriptionEvent const *e)
return c_result;
}
int SwigDirector_SipCallback::OnPublicationChanged(PublicationEvent const *e) {
int c_result = SwigValueInit< int >() ;
jint jresult = 0 ;
JNIEnvWrapper swigjnienv(this) ;
JNIEnv * jenv = swigjnienv.getJNIEnv() ;
jobject swigjobj = (jobject) NULL ;
jlong je = 0 ;
if (!swig_override[2]) {
return SipCallback::OnPublicationChanged(e);
}
swigjobj = swig_get_self(jenv);
if (swigjobj && jenv->IsSameObject(swigjobj, NULL) == JNI_FALSE) {
*((PublicationEvent **)&je) = (PublicationEvent *) e;
jresult = (jint) jenv->CallStaticIntMethod(Swig::jclass_tinyWRAPJNI, Swig::director_methids[2], swigjobj, je);
if (jenv->ExceptionOccurred()) return c_result;
c_result = (int)jresult;
} else {
SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "null upcall object");
}
if (swigjobj) jenv->DeleteLocalRef(swigjobj);
return c_result;
}
void SwigDirector_SipCallback::swig_connect_director(JNIEnv *jenv, jobject jself, jclass jcls, bool swig_mem_own, bool weak_global) {
static struct {
const char *mname;
@ -494,6 +521,9 @@ void SwigDirector_SipCallback::swig_connect_director(JNIEnv *jenv, jobject jself
},
{
"OnSubscriptionChanged", "(Lorg/doubango/tinyWRAP/SubscriptionEvent;)I", NULL
},
{
"OnPublicationChanged", "(Lorg/doubango/tinyWRAP/PublicationEvent;)I", NULL
}
};
@ -506,7 +536,7 @@ void SwigDirector_SipCallback::swig_connect_director(JNIEnv *jenv, jobject jself
baseclass = (jclass) jenv->NewGlobalRef(baseclass);
}
bool derived = (jenv->IsSameObject(baseclass, jcls) ? false : true);
for (int i = 0; i < 2; ++i) {
for (int i = 0; i < 3; ++i) {
if (!methods[i].base_methid) {
methods[i].base_methid = jenv->GetMethodID(baseclass, methods[i].mname, methods[i].mdesc);
if (!methods[i].base_methid) return;
@ -548,7 +578,7 @@ int SwigDirector_SipDebugCallback::OnDebugInfo(char const *message) {
jmessage = jenv->NewStringUTF((const char *)message);
if (!jmessage) return c_result;
}
jresult = (jint) jenv->CallStaticIntMethod(Swig::jclass_tinyWRAPJNI, Swig::director_methids[2], swigjobj, jmessage);
jresult = (jint) jenv->CallStaticIntMethod(Swig::jclass_tinyWRAPJNI, Swig::director_methids[3], swigjobj, jmessage);
if (jenv->ExceptionOccurred()) return c_result;
c_result = (int)jresult;
} else {
@ -576,7 +606,7 @@ int SwigDirector_SipDebugCallback::OnDebugWarn(char const *message) {
jmessage = jenv->NewStringUTF((const char *)message);
if (!jmessage) return c_result;
}
jresult = (jint) jenv->CallStaticIntMethod(Swig::jclass_tinyWRAPJNI, Swig::director_methids[3], swigjobj, jmessage);
jresult = (jint) jenv->CallStaticIntMethod(Swig::jclass_tinyWRAPJNI, Swig::director_methids[4], swigjobj, jmessage);
if (jenv->ExceptionOccurred()) return c_result;
c_result = (int)jresult;
} else {
@ -604,7 +634,7 @@ int SwigDirector_SipDebugCallback::OnDebugError(char const *message) {
jmessage = jenv->NewStringUTF((const char *)message);
if (!jmessage) return c_result;
}
jresult = (jint) jenv->CallStaticIntMethod(Swig::jclass_tinyWRAPJNI, Swig::director_methids[4], swigjobj, jmessage);
jresult = (jint) jenv->CallStaticIntMethod(Swig::jclass_tinyWRAPJNI, Swig::director_methids[5], swigjobj, jmessage);
if (jenv->ExceptionOccurred()) return c_result;
c_result = (int)jresult;
} else {
@ -632,7 +662,7 @@ int SwigDirector_SipDebugCallback::OnDebugFatal(char const *message) {
jmessage = jenv->NewStringUTF((const char *)message);
if (!jmessage) return c_result;
}
jresult = (jint) jenv->CallStaticIntMethod(Swig::jclass_tinyWRAPJNI, Swig::director_methids[5], swigjobj, jmessage);
jresult = (jint) jenv->CallStaticIntMethod(Swig::jclass_tinyWRAPJNI, Swig::director_methids[6], swigjobj, jmessage);
if (jenv->ExceptionOccurred()) return c_result;
c_result = (int)jresult;
} else {
@ -777,21 +807,6 @@ SWIGEXPORT void JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_delete_1SipMessag
}
SWIGEXPORT void * JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_SipMessage_1getSipContent(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
void * jresult = 0 ;
SipMessage *arg1 = (SipMessage *) 0 ;
void *result = 0 ;
(void)jenv;
(void)jcls;
(void)jarg1_;
arg1 = *(SipMessage **)&jarg1;
result = (void *)((SipMessage const *)arg1)->getSipContent();
jresult = result;
return jresult;
}
SWIGEXPORT jstring JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_SipMessage_1getSipHeaderValue_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jstring jarg2, jlong jarg3) {
jstring jresult = 0 ;
SipMessage *arg1 = (SipMessage *) 0 ;
@ -810,7 +825,7 @@ SWIGEXPORT jstring JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_SipMessage_1ge
}
arg3 = (unsigned int)jarg3;
result = (char *)(arg1)->getSipHeaderValue((char const *)arg2,arg3);
if(result) jresult = jenv->NewStringUTF((const char *)result);
if (result) jresult = jenv->NewStringUTF((const char *)result);
if (arg2) jenv->ReleaseStringUTFChars(jarg2, (const char *)arg2);
delete [] result;
return jresult;
@ -833,7 +848,7 @@ SWIGEXPORT jstring JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_SipMessage_1ge
if (!arg2) return 0;
}
result = (char *)(arg1)->getSipHeaderValue((char const *)arg2);
if(result) jresult = jenv->NewStringUTF((const char *)result);
if (result) jresult = jenv->NewStringUTF((const char *)result);
if (arg2) jenv->ReleaseStringUTFChars(jarg2, (const char *)arg2);
delete [] result;
return jresult;
@ -864,7 +879,7 @@ SWIGEXPORT jstring JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_SipMessage_1ge
}
arg4 = (unsigned int)jarg4;
result = (char *)(arg1)->getSipHeaderParamValue((char const *)arg2,(char const *)arg3,arg4);
if(result) jresult = jenv->NewStringUTF((const char *)result);
if (result) jresult = jenv->NewStringUTF((const char *)result);
if (arg2) jenv->ReleaseStringUTFChars(jarg2, (const char *)arg2);
if (arg3) jenv->ReleaseStringUTFChars(jarg3, (const char *)arg3);
return jresult;
@ -893,7 +908,7 @@ SWIGEXPORT jstring JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_SipMessage_1ge
if (!arg3) return 0;
}
result = (char *)(arg1)->getSipHeaderParamValue((char const *)arg2,(char const *)arg3);
if(result) jresult = jenv->NewStringUTF((const char *)result);
if (result) jresult = jenv->NewStringUTF((const char *)result);
if (arg2) jenv->ReleaseStringUTFChars(jarg2, (const char *)arg2);
if (arg3) jenv->ReleaseStringUTFChars(jarg3, (const char *)arg3);
return jresult;
@ -947,7 +962,7 @@ SWIGEXPORT jstring JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_SipEvent_1getP
(void)jarg1_;
arg1 = *(SipEvent **)&jarg1;
result = (char *)((SipEvent const *)arg1)->getPhrase();
if(result) jresult = jenv->NewStringUTF((const char *)result);
if (result) jresult = jenv->NewStringUTF((const char *)result);
return jresult;
}
@ -1192,6 +1207,117 @@ SWIGEXPORT jboolean JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_SipSession_1s
}
SWIGEXPORT jlong JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_new_1PublicationEvent(JNIEnv *jenv, jclass jcls) {
jlong jresult = 0 ;
PublicationEvent *result = 0 ;
(void)jenv;
(void)jcls;
result = (PublicationEvent *)new PublicationEvent();
*(PublicationEvent **)&jresult = result;
return jresult;
}
SWIGEXPORT void JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_delete_1PublicationEvent(JNIEnv *jenv, jclass jcls, jlong jarg1) {
PublicationEvent *arg1 = (PublicationEvent *) 0 ;
(void)jenv;
(void)jcls;
arg1 = *(PublicationEvent **)&jarg1;
delete arg1;
}
SWIGEXPORT jint JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_PublicationEvent_1getType(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
jint jresult = 0 ;
PublicationEvent *arg1 = (PublicationEvent *) 0 ;
tsip_publish_event_type_t result;
(void)jenv;
(void)jcls;
(void)jarg1_;
arg1 = *(PublicationEvent **)&jarg1;
result = (tsip_publish_event_type_t)((PublicationEvent const *)arg1)->getType();
jresult = (jint)result;
return jresult;
}
SWIGEXPORT jlong JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_PublicationEvent_1getSession(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
jlong jresult = 0 ;
PublicationEvent *arg1 = (PublicationEvent *) 0 ;
PublicationSession *result = 0 ;
(void)jenv;
(void)jcls;
(void)jarg1_;
arg1 = *(PublicationEvent **)&jarg1;
result = (PublicationSession *)((PublicationEvent const *)arg1)->getSession();
*(PublicationSession **)&jresult = result;
return jresult;
}
SWIGEXPORT jlong JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_new_1PublicationSession(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
jlong jresult = 0 ;
SipStack *arg1 = (SipStack *) 0 ;
PublicationSession *result = 0 ;
(void)jenv;
(void)jcls;
(void)jarg1_;
arg1 = *(SipStack **)&jarg1;
result = (PublicationSession *)new PublicationSession(arg1);
*(PublicationSession **)&jresult = result;
return jresult;
}
SWIGEXPORT void JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_delete_1PublicationSession(JNIEnv *jenv, jclass jcls, jlong jarg1) {
PublicationSession *arg1 = (PublicationSession *) 0 ;
(void)jenv;
(void)jcls;
arg1 = *(PublicationSession **)&jarg1;
delete arg1;
}
SWIGEXPORT jboolean JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_PublicationSession_1Publish(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, void * jarg2, jlong jarg3) {
jboolean jresult = 0 ;
PublicationSession *arg1 = (PublicationSession *) 0 ;
void *arg2 = (void *) 0 ;
unsigned int arg3 ;
bool result;
(void)jenv;
(void)jcls;
(void)jarg1_;
arg1 = *(PublicationSession **)&jarg1;
arg2 = jarg2;
arg3 = (unsigned int)jarg3;
result = (bool)(arg1)->Publish((void const *)arg2,arg3);
jresult = (jboolean)result;
return jresult;
}
SWIGEXPORT jboolean JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_PublicationSession_1UnPublish(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
jboolean jresult = 0 ;
PublicationSession *arg1 = (PublicationSession *) 0 ;
bool result;
(void)jenv;
(void)jcls;
(void)jarg1_;
arg1 = *(PublicationSession **)&jarg1;
result = (bool)(arg1)->UnPublish();
jresult = (jboolean)result;
return jresult;
}
SWIGEXPORT jlong JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_new_1RegistrationEvent(JNIEnv *jenv, jclass jcls) {
jlong jresult = 0 ;
RegistrationEvent *result = 0 ;
@ -1500,6 +1626,42 @@ SWIGEXPORT jint JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_SipCallback_1OnSu
}
SWIGEXPORT jint JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_SipCallback_1OnPublicationChanged(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
jint jresult = 0 ;
SipCallback *arg1 = (SipCallback *) 0 ;
PublicationEvent *arg2 = (PublicationEvent *) 0 ;
int result;
(void)jenv;
(void)jcls;
(void)jarg1_;
(void)jarg2_;
arg1 = *(SipCallback **)&jarg1;
arg2 = *(PublicationEvent **)&jarg2;
result = (int)(arg1)->OnPublicationChanged((PublicationEvent const *)arg2);
jresult = (jint)result;
return jresult;
}
SWIGEXPORT jint JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_SipCallback_1OnPublicationChangedSwigExplicitSipCallback(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
jint jresult = 0 ;
SipCallback *arg1 = (SipCallback *) 0 ;
PublicationEvent *arg2 = (PublicationEvent *) 0 ;
int result;
(void)jenv;
(void)jcls;
(void)jarg1_;
(void)jarg2_;
arg1 = *(SipCallback **)&jarg1;
arg2 = *(PublicationEvent **)&jarg2;
result = (int)(arg1)->SipCallback::OnPublicationChanged((PublicationEvent const *)arg2);
jresult = (jint)result;
return jresult;
}
SWIGEXPORT void JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_SipCallback_1director_1connect(JNIEnv *jenv, jclass jcls, jobject jself, jlong objarg, jboolean jswig_mem_own, jboolean jweak_global) {
SipCallback *obj = *((SipCallback **)&objarg);
(void)jcls;
@ -2154,6 +2316,22 @@ SWIGEXPORT jboolean JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_SipStack_1sto
}
SWIGEXPORT jlong JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_SWIGPublicationEventUpcast(JNIEnv *jenv, jclass jcls, jlong jarg1) {
jlong baseptr = 0;
(void)jenv;
(void)jcls;
*(SipEvent **)&baseptr = *(PublicationEvent **)&jarg1;
return baseptr;
}
SWIGEXPORT jlong JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_SWIGPublicationSessionUpcast(JNIEnv *jenv, jclass jcls, jlong jarg1) {
jlong baseptr = 0;
(void)jenv;
(void)jcls;
*(SipSession **)&baseptr = *(PublicationSession **)&jarg1;
return baseptr;
}
SWIGEXPORT jlong JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_SWIGRegistrationEventUpcast(JNIEnv *jenv, jclass jcls, jlong jarg1) {
jlong baseptr = 0;
(void)jenv;
@ -2200,13 +2378,16 @@ SWIGEXPORT void JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_swig_1module_1ini
static struct {
const char *method;
const char *signature;
} methods[6] = {
} methods[7] = {
{
"SwigDirector_SipCallback_OnRegistrationChanged", "(Lorg/doubango/tinyWRAP/SipCallback;J)I"
},
{
"SwigDirector_SipCallback_OnSubscriptionChanged", "(Lorg/doubango/tinyWRAP/SipCallback;J)I"
},
{
"SwigDirector_SipCallback_OnPublicationChanged", "(Lorg/doubango/tinyWRAP/SipCallback;J)I"
},
{
"SwigDirector_SipDebugCallback_OnDebugInfo", "(Lorg/doubango/tinyWRAP/SipDebugCallback;Ljava/lang/String;)I"
},

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* This file is not intended to be easily readable and contains a number of
* coding conventions designed to improve portability and efficiency. Do not make
@ -19,12 +19,13 @@ public:
virtual ~SwigDirector_SipCallback();
virtual int OnRegistrationChanged(RegistrationEvent const *e);
virtual int OnSubscriptionChanged(SubscriptionEvent const *e);
virtual int OnPublicationChanged(PublicationEvent const *e);
public:
bool swig_overrides(int n) {
return (n < 2 ? swig_override[n] : false);
return (n < 3 ? swig_override[n] : false);
}
protected:
bool swig_override[2];
bool swig_override[3];
};
class SwigDirector_SipDebugCallback : public SipDebugCallback, public Swig::Director {

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.

View File

@ -0,0 +1,58 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.
* ----------------------------------------------------------------------------- */
package org.doubango.tinyWRAP;
public enum tsip_publish_event_type_t {
tsip_i_publish,
tsip_ai_publish,
tsip_o_publish,
tsip_ao_publish,
tsip_i_unpublish,
tsip_ai_unpublish,
tsip_o_unpublish,
tsip_ao_unpublish;
public final int swigValue() {
return swigValue;
}
public static tsip_publish_event_type_t swigToEnum(int swigValue) {
tsip_publish_event_type_t[] swigValues = tsip_publish_event_type_t.class.getEnumConstants();
if (swigValue < swigValues.length && swigValue >= 0 && swigValues[swigValue].swigValue == swigValue)
return swigValues[swigValue];
for (tsip_publish_event_type_t swigEnum : swigValues)
if (swigEnum.swigValue == swigValue)
return swigEnum;
throw new IllegalArgumentException("No enum " + tsip_publish_event_type_t.class + " with value " + swigValue);
}
@SuppressWarnings("unused")
private tsip_publish_event_type_t() {
this.swigValue = SwigNext.next++;
}
@SuppressWarnings("unused")
private tsip_publish_event_type_t(int swigValue) {
this.swigValue = swigValue;
SwigNext.next = swigValue+1;
}
@SuppressWarnings("unused")
private tsip_publish_event_type_t(tsip_publish_event_type_t swigEnum) {
this.swigValue = swigEnum.swigValue;
SwigNext.next = this.swigValue+1;
}
private final int swigValue;
private static class SwigNext {
private static int next = 0;
}
}

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.
@ -15,7 +15,6 @@ class tinyWRAPJNI {
public final static native boolean SipUri_isValid__SWIG_1(long jarg1, SipUri jarg1_);
public final static native long new_SipMessage();
public final static native void delete_SipMessage(long jarg1);
public final static native byte[] SipMessage_getSipContent(long jarg1, SipMessage jarg1_);
public final static native String SipMessage_getSipHeaderValue__SWIG_0(long jarg1, SipMessage jarg1_, String jarg2, long jarg3);
public final static native String SipMessage_getSipHeaderValue__SWIG_1(long jarg1, SipMessage jarg1_, String jarg2);
public final static native String SipMessage_getSipHeaderParamValue__SWIG_0(long jarg1, SipMessage jarg1_, String jarg2, String jarg3, long jarg4);
@ -36,6 +35,14 @@ class tinyWRAPJNI {
public final static native boolean SipSession_setExpires(long jarg1, SipSession jarg1_, long jarg2);
public final static native boolean SipSession_setFromUri(long jarg1, SipSession jarg1_, String jarg2);
public final static native boolean SipSession_setToUri(long jarg1, SipSession jarg1_, String jarg2);
public final static native long new_PublicationEvent();
public final static native void delete_PublicationEvent(long jarg1);
public final static native int PublicationEvent_getType(long jarg1, PublicationEvent jarg1_);
public final static native long PublicationEvent_getSession(long jarg1, PublicationEvent jarg1_);
public final static native long new_PublicationSession(long jarg1, SipStack jarg1_);
public final static native void delete_PublicationSession(long jarg1);
public final static native boolean PublicationSession_Publish(long jarg1, PublicationSession jarg1_, byte[] jarg2, long jarg3);
public final static native boolean PublicationSession_UnPublish(long jarg1, PublicationSession jarg1_);
public final static native long new_RegistrationEvent();
public final static native void delete_RegistrationEvent(long jarg1);
public final static native int RegistrationEvent_getType(long jarg1, RegistrationEvent jarg1_);
@ -58,6 +65,8 @@ class tinyWRAPJNI {
public final static native int SipCallback_OnRegistrationChangedSwigExplicitSipCallback(long jarg1, SipCallback jarg1_, long jarg2, RegistrationEvent jarg2_);
public final static native int SipCallback_OnSubscriptionChanged(long jarg1, SipCallback jarg1_, long jarg2, SubscriptionEvent jarg2_);
public final static native int SipCallback_OnSubscriptionChangedSwigExplicitSipCallback(long jarg1, SipCallback jarg1_, long jarg2, SubscriptionEvent jarg2_);
public final static native int SipCallback_OnPublicationChanged(long jarg1, SipCallback jarg1_, long jarg2, PublicationEvent jarg2_);
public final static native int SipCallback_OnPublicationChangedSwigExplicitSipCallback(long jarg1, SipCallback jarg1_, long jarg2, PublicationEvent jarg2_);
public final static native void SipCallback_director_connect(SipCallback obj, long cptr, boolean mem_own, boolean weak_global);
public final static native void SipCallback_change_ownership(SipCallback obj, long cptr, boolean take_or_release);
public final static native long new_SipDebugCallback();
@ -93,6 +102,8 @@ class tinyWRAPJNI {
public final static native boolean SipStack_addDnsServer(long jarg1, SipStack jarg1_, String jarg2);
public final static native boolean SipStack_isValid(long jarg1, SipStack jarg1_);
public final static native boolean SipStack_stop(long jarg1, SipStack jarg1_);
public final static native long SWIGPublicationEventUpcast(long jarg1);
public final static native long SWIGPublicationSessionUpcast(long jarg1);
public final static native long SWIGRegistrationEventUpcast(long jarg1);
public final static native long SWIGRegistrationSessionUpcast(long jarg1);
public final static native long SWIGSubscriptionEventUpcast(long jarg1);
@ -105,6 +116,9 @@ class tinyWRAPJNI {
public static int SwigDirector_SipCallback_OnSubscriptionChanged(SipCallback self, long e) {
return self.OnSubscriptionChanged((e == 0) ? null : new SubscriptionEvent(e, false));
}
public static int SwigDirector_SipCallback_OnPublicationChanged(SipCallback self, long e) {
return self.OnPublicationChanged((e == 0) ? null : new PublicationEvent(e, false));
}
public static int SwigDirector_SipDebugCallback_OnDebugInfo(SipDebugCallback self, String message) {
return self.OnDebugInfo(message);
}

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* This file is not intended to be easily readable and contains a number of
* coding conventions designed to improve portability and efficiency. Do not make
@ -35,114 +35,114 @@ template <typename T> T SwigValueInit() {
}
#endif
/* -----------------------------------------------------------------------------
* This section contains generic SWIG labels for method/variable
* declarations/attributes, and other compiler dependent labels.
* ----------------------------------------------------------------------------- */
/* template workaround for compilers that cannot correctly implement the C++ standard */
#ifndef SWIGTEMPLATEDISAMBIGUATOR
# if defined(__SUNPRO_CC) && (__SUNPRO_CC <= 0x560)
# define SWIGTEMPLATEDISAMBIGUATOR template
# elif defined(__HP_aCC)
/* Needed even with `aCC -AA' when `aCC -V' reports HP ANSI C++ B3910B A.03.55 */
/* If we find a maximum version that requires this, the test would be __HP_aCC <= 35500 for A.03.55 */
# define SWIGTEMPLATEDISAMBIGUATOR template
# else
# define SWIGTEMPLATEDISAMBIGUATOR
# endif
#endif
/* inline attribute */
#ifndef SWIGINLINE
# if defined(__cplusplus) || (defined(__GNUC__) && !defined(__STRICT_ANSI__))
# define SWIGINLINE inline
# else
# define SWIGINLINE
# endif
#endif
/* attribute recognised by some compilers to avoid 'unused' warnings */
#ifndef SWIGUNUSED
# if defined(__GNUC__)
# if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
# define SWIGUNUSED __attribute__ ((__unused__))
# else
# define SWIGUNUSED
# endif
# elif defined(__ICC)
# define SWIGUNUSED __attribute__ ((__unused__))
# else
# define SWIGUNUSED
# endif
#endif
#ifndef SWIG_MSC_UNSUPPRESS_4505
# if defined(_MSC_VER)
# pragma warning(disable : 4505) /* unreferenced local function has been removed */
# endif
#endif
#ifndef SWIGUNUSEDPARM
# ifdef __cplusplus
# define SWIGUNUSEDPARM(p)
# else
# define SWIGUNUSEDPARM(p) p SWIGUNUSED
# endif
#endif
/* internal SWIG method */
#ifndef SWIGINTERN
# define SWIGINTERN static SWIGUNUSED
#endif
/* internal inline SWIG method */
#ifndef SWIGINTERNINLINE
# define SWIGINTERNINLINE SWIGINTERN SWIGINLINE
#endif
/* exporting methods */
#if (__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)
# ifndef GCC_HASCLASSVISIBILITY
# define GCC_HASCLASSVISIBILITY
# endif
#endif
#ifndef SWIGEXPORT
# if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
# if defined(STATIC_LINKED)
# define SWIGEXPORT
# else
# define SWIGEXPORT __declspec(dllexport)
# endif
# else
# if defined(__GNUC__) && defined(GCC_HASCLASSVISIBILITY)
# define SWIGEXPORT __attribute__ ((visibility("default")))
# else
# define SWIGEXPORT
# endif
# endif
#endif
/* calling conventions for Windows */
#ifndef SWIGSTDCALL
# if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
# define SWIGSTDCALL __stdcall
# else
# define SWIGSTDCALL
# endif
#endif
/* Deal with Microsoft's attempt at deprecating C standard runtime functions */
#if !defined(SWIG_NO_CRT_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_CRT_SECURE_NO_DEPRECATE)
# define _CRT_SECURE_NO_DEPRECATE
#endif
/* Deal with Microsoft's attempt at deprecating methods in the standard C++ library */
#if !defined(SWIG_NO_SCL_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_SCL_SECURE_NO_DEPRECATE)
# define _SCL_SECURE_NO_DEPRECATE
#endif
/* -----------------------------------------------------------------------------
* This section contains generic SWIG labels for method/variable
* declarations/attributes, and other compiler dependent labels.
* ----------------------------------------------------------------------------- */
/* template workaround for compilers that cannot correctly implement the C++ standard */
#ifndef SWIGTEMPLATEDISAMBIGUATOR
# if defined(__SUNPRO_CC) && (__SUNPRO_CC <= 0x560)
# define SWIGTEMPLATEDISAMBIGUATOR template
# elif defined(__HP_aCC)
/* Needed even with `aCC -AA' when `aCC -V' reports HP ANSI C++ B3910B A.03.55 */
/* If we find a maximum version that requires this, the test would be __HP_aCC <= 35500 for A.03.55 */
# define SWIGTEMPLATEDISAMBIGUATOR template
# else
# define SWIGTEMPLATEDISAMBIGUATOR
# endif
#endif
/* inline attribute */
#ifndef SWIGINLINE
# if defined(__cplusplus) || (defined(__GNUC__) && !defined(__STRICT_ANSI__))
# define SWIGINLINE inline
# else
# define SWIGINLINE
# endif
#endif
/* attribute recognised by some compilers to avoid 'unused' warnings */
#ifndef SWIGUNUSED
# if defined(__GNUC__)
# if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
# define SWIGUNUSED __attribute__ ((__unused__))
# else
# define SWIGUNUSED
# endif
# elif defined(__ICC)
# define SWIGUNUSED __attribute__ ((__unused__))
# else
# define SWIGUNUSED
# endif
#endif
#ifndef SWIG_MSC_UNSUPPRESS_4505
# if defined(_MSC_VER)
# pragma warning(disable : 4505) /* unreferenced local function has been removed */
# endif
#endif
#ifndef SWIGUNUSEDPARM
# ifdef __cplusplus
# define SWIGUNUSEDPARM(p)
# else
# define SWIGUNUSEDPARM(p) p SWIGUNUSED
# endif
#endif
/* internal SWIG method */
#ifndef SWIGINTERN
# define SWIGINTERN static SWIGUNUSED
#endif
/* internal inline SWIG method */
#ifndef SWIGINTERNINLINE
# define SWIGINTERNINLINE SWIGINTERN SWIGINLINE
#endif
/* exporting methods */
#if (__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)
# ifndef GCC_HASCLASSVISIBILITY
# define GCC_HASCLASSVISIBILITY
# endif
#endif
#ifndef SWIGEXPORT
# if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
# if defined(STATIC_LINKED)
# define SWIGEXPORT
# else
# define SWIGEXPORT __declspec(dllexport)
# endif
# else
# if defined(__GNUC__) && defined(GCC_HASCLASSVISIBILITY)
# define SWIGEXPORT __attribute__ ((visibility("default")))
# else
# define SWIGEXPORT
# endif
# endif
#endif
/* calling conventions for Windows */
#ifndef SWIGSTDCALL
# if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
# define SWIGSTDCALL __stdcall
# else
# define SWIGSTDCALL
# endif
#endif
/* Deal with Microsoft's attempt at deprecating C standard runtime functions */
#if !defined(SWIG_NO_CRT_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_CRT_SECURE_NO_DEPRECATE)
# define _CRT_SECURE_NO_DEPRECATE
#endif
/* Deal with Microsoft's attempt at deprecating methods in the standard C++ library */
#if !defined(SWIG_NO_SCL_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_SCL_SECURE_NO_DEPRECATE)
# define _SCL_SECURE_NO_DEPRECATE
#endif
/* Fix for jlong on some versions of gcc on Windows */
@ -193,7 +193,8 @@ static void SWIGUNUSED SWIG_JavaThrowException(JNIEnv *jenv, SWIG_JavaExceptionC
{ SWIG_JavaNullPointerException, "java/lang/NullPointerException" },
{ SWIG_JavaDirectorPureVirtual, "java/lang/RuntimeException" },
{ SWIG_JavaUnknownError, "java/lang/UnknownError" },
{ (SWIG_JavaExceptionCodes)0, "java/lang/UnknownError" } };
{ (SWIG_JavaExceptionCodes)0, "java/lang/UnknownError" }
};
const SWIG_JavaExceptions_t *except_ptr = java_exceptions;
while (except_ptr->code != code && except_ptr->code)
@ -210,206 +211,208 @@ static void SWIGUNUSED SWIG_JavaThrowException(JNIEnv *jenv, SWIG_JavaExceptionC
#define SWIG_contract_assert(nullreturn, expr, msg) if (!(expr)) {SWIG_JavaThrowException(jenv, SWIG_JavaIllegalArgumentException, msg); return nullreturn; } else
/* -----------------------------------------------------------------------------
* See the LICENSE file for information on copyright, usage and redistribution
* of SWIG, and the README file for authors - http://www.swig.org/release.html.
*
* director.swg
*
* This file contains support for director classes that proxy
* method calls from C++ to Java extensions.
* ----------------------------------------------------------------------------- */
#ifdef __cplusplus
#if defined(DEBUG_DIRECTOR_OWNED)
#include <iostream>
#endif
namespace Swig {
/* Java object wrapper */
class JObjectWrapper {
public:
JObjectWrapper() : jthis_(NULL), weak_global_(true) {
}
~JObjectWrapper() {
jthis_ = NULL;
weak_global_ = true;
}
bool set(JNIEnv *jenv, jobject jobj, bool mem_own, bool weak_global) {
if (!jthis_) {
weak_global_ = weak_global;
if (jobj)
jthis_ = ((weak_global_ || !mem_own) ? jenv->NewWeakGlobalRef(jobj) : jenv->NewGlobalRef(jobj));
#if defined(DEBUG_DIRECTOR_OWNED)
std::cout << "JObjectWrapper::set(" << jobj << ", " << (weak_global ? "weak_global" : "global_ref") << ") -> " << jthis_ << std::endl;
#endif
return true;
} else {
#if defined(DEBUG_DIRECTOR_OWNED)
std::cout << "JObjectWrapper::set(" << jobj << ", " << (weak_global ? "weak_global" : "global_ref") << ") -> already set" << std::endl;
#endif
return false;
}
}
jobject get(JNIEnv *jenv) const {
#if defined(DEBUG_DIRECTOR_OWNED)
std::cout << "JObjectWrapper::get(";
if (jthis_)
std::cout << jthis_;
else
std::cout << "null";
std::cout << ") -> return new local ref" << std::endl;
#endif
return (jthis_ ? jenv->NewLocalRef(jthis_) : jthis_);
}
void release(JNIEnv *jenv) {
#if defined(DEBUG_DIRECTOR_OWNED)
std::cout << "JObjectWrapper::release(" << jthis_ << "): " << (weak_global_ ? "weak global ref" : "global ref") << std::endl;
#endif
if (jthis_) {
if (weak_global_) {
if (jenv->IsSameObject(jthis_, NULL) == JNI_FALSE)
jenv->DeleteWeakGlobalRef((jweak)jthis_);
} else
jenv->DeleteGlobalRef(jthis_);
}
jthis_ = NULL;
weak_global_ = true;
}
jobject peek() {
return jthis_;
}
/* Java proxy releases ownership of C++ object, C++ object is now
responsible for destruction (creates NewGlobalRef to pin Java
proxy) */
void java_change_ownership(JNIEnv *jenv, jobject jself, bool take_or_release) {
if (take_or_release) { /* Java takes ownership of C++ object's lifetime. */
if (!weak_global_) {
jenv->DeleteGlobalRef(jthis_);
jthis_ = jenv->NewWeakGlobalRef(jself);
weak_global_ = true;
}
} else { /* Java releases ownership of C++ object's lifetime */
if (weak_global_) {
jenv->DeleteWeakGlobalRef((jweak)jthis_);
jthis_ = jenv->NewGlobalRef(jself);
weak_global_ = false;
}
}
}
private:
/* pointer to Java object */
jobject jthis_;
/* Local or global reference flag */
bool weak_global_;
};
/* director base class */
class Director {
/* pointer to Java virtual machine */
JavaVM *swig_jvm_;
protected:
#if defined (_MSC_VER) && (_MSC_VER<1300)
class JNIEnvWrapper;
friend class JNIEnvWrapper;
#endif
/* Utility class for managing the JNI environment */
class JNIEnvWrapper {
const Director *director_;
JNIEnv *jenv_;
public:
JNIEnvWrapper(const Director *director) : director_(director), jenv_(0) {
#if defined(SWIG_JAVA_ATTACH_CURRENT_THREAD_AS_DAEMON)
// Attach a daemon thread to the JVM. Useful when the JVM should not wait for
// the thread to exit upon shutdown. Only for jdk-1.4 and later.
director_->swig_jvm_->AttachCurrentThreadAsDaemon((void **) &jenv_, NULL);
#else
director_->swig_jvm_->AttachCurrentThread((void **) &jenv_, NULL);
#endif
}
~JNIEnvWrapper() {
#if !defined(SWIG_JAVA_NO_DETACH_CURRENT_THREAD)
// Some JVMs, eg jdk-1.4.2 and lower on Solaris have a bug and crash with the DetachCurrentThread call.
// However, without this call, the JVM hangs on exit when the thread was not created by the JVM and creates a memory leak.
director_->swig_jvm_->DetachCurrentThread();
#endif
}
JNIEnv *getJNIEnv() const {
return jenv_;
}
};
/* Java object wrapper */
JObjectWrapper swig_self_;
/* Disconnect director from Java object */
void swig_disconnect_director_self(const char *disconn_method) {
JNIEnvWrapper jnienv(this) ;
JNIEnv *jenv = jnienv.getJNIEnv() ;
jobject jobj = swig_self_.peek();
#if defined(DEBUG_DIRECTOR_OWNED)
std::cout << "Swig::Director::disconnect_director_self(" << jobj << ")" << std::endl;
#endif
if (jobj && jenv->IsSameObject(jobj, NULL) == JNI_FALSE) {
jmethodID disconn_meth = jenv->GetMethodID(jenv->GetObjectClass(jobj), disconn_method, "()V");
if (disconn_meth) {
#if defined(DEBUG_DIRECTOR_OWNED)
std::cout << "Swig::Director::disconnect_director_self upcall to " << disconn_method << std::endl;
#endif
jenv->CallVoidMethod(jobj, disconn_meth);
}
}
}
public:
Director(JNIEnv *jenv) : swig_jvm_((JavaVM *) NULL), swig_self_() {
/* Acquire the Java VM pointer */
jenv->GetJavaVM(&swig_jvm_);
}
virtual ~Director() {
JNIEnvWrapper jnienv(this) ;
JNIEnv *jenv = jnienv.getJNIEnv() ;
swig_self_.release(jenv);
}
bool swig_set_self(JNIEnv *jenv, jobject jself, bool mem_own, bool weak_global) {
return swig_self_.set(jenv, jself, mem_own, weak_global);
}
jobject swig_get_self(JNIEnv *jenv) const {
return swig_self_.get(jenv);
}
// Change C++ object's ownership, relative to Java
void swig_java_change_ownership(JNIEnv *jenv, jobject jself, bool take_or_release) {
swig_self_.java_change_ownership(jenv, jself, take_or_release);
}
};
}
#endif /* __cplusplus */
/* -----------------------------------------------------------------------------
* See the LICENSE file for information on copyright, usage and redistribution
* of SWIG, and the README file for authors - http://www.swig.org/release.html.
*
* director.swg
*
* This file contains support for director classes that proxy
* method calls from C++ to Java extensions.
* ----------------------------------------------------------------------------- */
#ifdef __cplusplus
#if defined(DEBUG_DIRECTOR_OWNED)
#include <iostream>
#endif
namespace Swig {
/* Java object wrapper */
class JObjectWrapper {
public:
JObjectWrapper() : jthis_(NULL), weak_global_(true) {
}
~JObjectWrapper() {
jthis_ = NULL;
weak_global_ = true;
}
bool set(JNIEnv *jenv, jobject jobj, bool mem_own, bool weak_global) {
if (!jthis_) {
weak_global_ = weak_global;
if (jobj)
jthis_ = ((weak_global_ || !mem_own) ? jenv->NewWeakGlobalRef(jobj) : jenv->NewGlobalRef(jobj));
#if defined(DEBUG_DIRECTOR_OWNED)
std::cout << "JObjectWrapper::set(" << jobj << ", " << (weak_global ? "weak_global" : "global_ref") << ") -> " << jthis_ << std::endl;
#endif
return true;
} else {
#if defined(DEBUG_DIRECTOR_OWNED)
std::cout << "JObjectWrapper::set(" << jobj << ", " << (weak_global ? "weak_global" : "global_ref") << ") -> already set" << std::endl;
#endif
return false;
}
}
jobject get(JNIEnv *jenv) const {
#if defined(DEBUG_DIRECTOR_OWNED)
std::cout << "JObjectWrapper::get(";
if (jthis_)
std::cout << jthis_;
else
std::cout << "null";
std::cout << ") -> return new local ref" << std::endl;
#endif
return (jthis_ ? jenv->NewLocalRef(jthis_) : jthis_);
}
void release(JNIEnv *jenv) {
#if defined(DEBUG_DIRECTOR_OWNED)
std::cout << "JObjectWrapper::release(" << jthis_ << "): " << (weak_global_ ? "weak global ref" : "global ref") << std::endl;
#endif
if (jthis_) {
if (weak_global_) {
if (jenv->IsSameObject(jthis_, NULL) == JNI_FALSE)
jenv->DeleteWeakGlobalRef((jweak)jthis_);
} else
jenv->DeleteGlobalRef(jthis_);
}
jthis_ = NULL;
weak_global_ = true;
}
jobject peek() {
return jthis_;
}
/* Java proxy releases ownership of C++ object, C++ object is now
responsible for destruction (creates NewGlobalRef to pin Java
proxy) */
void java_change_ownership(JNIEnv *jenv, jobject jself, bool take_or_release) {
if (take_or_release) { /* Java takes ownership of C++ object's lifetime. */
if (!weak_global_) {
jenv->DeleteGlobalRef(jthis_);
jthis_ = jenv->NewWeakGlobalRef(jself);
weak_global_ = true;
}
} else { /* Java releases ownership of C++ object's lifetime */
if (weak_global_) {
jenv->DeleteWeakGlobalRef((jweak)jthis_);
jthis_ = jenv->NewGlobalRef(jself);
weak_global_ = false;
}
}
}
private:
/* pointer to Java object */
jobject jthis_;
/* Local or global reference flag */
bool weak_global_;
};
/* director base class */
class Director {
/* pointer to Java virtual machine */
JavaVM *swig_jvm_;
protected:
#if defined (_MSC_VER) && (_MSC_VER<1300)
class JNIEnvWrapper;
friend class JNIEnvWrapper;
#endif
/* Utility class for managing the JNI environment */
class JNIEnvWrapper {
const Director *director_;
JNIEnv *jenv_;
public:
JNIEnvWrapper(const Director *director) : director_(director), jenv_(0) {
#if defined(SWIG_JAVA_ATTACH_CURRENT_THREAD_AS_DAEMON)
// Attach a daemon thread to the JVM. Useful when the JVM should not wait for
// the thread to exit upon shutdown. Only for jdk-1.4 and later.
director_->swig_jvm_->AttachCurrentThreadAsDaemon((void **) &jenv_, NULL);
#else
director_->swig_jvm_->AttachCurrentThread((void **) &jenv_, NULL);
#endif
}
~JNIEnvWrapper() {
#if !defined(SWIG_JAVA_NO_DETACH_CURRENT_THREAD)
// Some JVMs, eg jdk-1.4.2 and lower on Solaris have a bug and crash with the DetachCurrentThread call.
// However, without this call, the JVM hangs on exit when the thread was not created by the JVM and creates a memory leak.
director_->swig_jvm_->DetachCurrentThread();
#endif
}
JNIEnv *getJNIEnv() const {
return jenv_;
}
};
/* Java object wrapper */
JObjectWrapper swig_self_;
/* Disconnect director from Java object */
void swig_disconnect_director_self(const char *disconn_method) {
JNIEnvWrapper jnienv(this) ;
JNIEnv *jenv = jnienv.getJNIEnv() ;
jobject jobj = swig_self_.peek();
#if defined(DEBUG_DIRECTOR_OWNED)
std::cout << "Swig::Director::disconnect_director_self(" << jobj << ")" << std::endl;
#endif
if (jobj && jenv->IsSameObject(jobj, NULL) == JNI_FALSE) {
jmethodID disconn_meth = jenv->GetMethodID(jenv->GetObjectClass(jobj), disconn_method, "()V");
if (disconn_meth) {
#if defined(DEBUG_DIRECTOR_OWNED)
std::cout << "Swig::Director::disconnect_director_self upcall to " << disconn_method << std::endl;
#endif
jenv->CallVoidMethod(jobj, disconn_meth);
}
}
}
public:
Director(JNIEnv *jenv) : swig_jvm_((JavaVM *) NULL), swig_self_() {
/* Acquire the Java VM pointer */
jenv->GetJavaVM(&swig_jvm_);
}
virtual ~Director() {
JNIEnvWrapper jnienv(this) ;
JNIEnv *jenv = jnienv.getJNIEnv() ;
swig_self_.release(jenv);
}
bool swig_set_self(JNIEnv *jenv, jobject jself, bool mem_own, bool weak_global) {
return swig_self_.set(jenv, jself, mem_own, weak_global);
}
jobject swig_get_self(JNIEnv *jenv) const {
return swig_self_.get(jenv);
}
// Change C++ object's ownership, relative to Java
void swig_java_change_ownership(JNIEnv *jenv, jobject jself, bool take_or_release) {
swig_self_.java_change_ownership(jenv, jself, take_or_release);
}
};
}
#endif /* __cplusplus */
namespace Swig {
static jclass jclass_tinyWRAPJNI = NULL;
static jmethodID director_methids[6];
static jmethodID director_methids[7];
}
#include "SipUri.h"
#include "SipMessage.h"
#include "SipEvent.h"
#include "SipSession.h"
#include "PublicationEvent.h"
#include "PublicationSession.h"
#include "RegistrationEvent.h"
#include "RegistrationSession.h"
#include "SubscriptionEvent.h"
@ -483,6 +486,30 @@ int SwigDirector_SipCallback::OnSubscriptionChanged(SubscriptionEvent const *e)
return c_result;
}
int SwigDirector_SipCallback::OnPublicationChanged(PublicationEvent const *e) {
int c_result = SwigValueInit< int >() ;
jint jresult = 0 ;
JNIEnvWrapper swigjnienv(this) ;
JNIEnv * jenv = swigjnienv.getJNIEnv() ;
jobject swigjobj = (jobject) NULL ;
jlong je = 0 ;
if (!swig_override[2]) {
return SipCallback::OnPublicationChanged(e);
}
swigjobj = swig_get_self(jenv);
if (swigjobj && jenv->IsSameObject(swigjobj, NULL) == JNI_FALSE) {
*((PublicationEvent **)&je) = (PublicationEvent *) e;
jresult = (jint) jenv->CallStaticIntMethod(Swig::jclass_tinyWRAPJNI, Swig::director_methids[2], swigjobj, je);
if (jenv->ExceptionOccurred()) return c_result;
c_result = (int)jresult;
} else {
SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "null upcall object");
}
if (swigjobj) jenv->DeleteLocalRef(swigjobj);
return c_result;
}
void SwigDirector_SipCallback::swig_connect_director(JNIEnv *jenv, jobject jself, jclass jcls, bool swig_mem_own, bool weak_global) {
static struct {
const char *mname;
@ -494,6 +521,9 @@ void SwigDirector_SipCallback::swig_connect_director(JNIEnv *jenv, jobject jself
},
{
"OnSubscriptionChanged", "(Lorg/doubango/tinyWRAP/SubscriptionEvent;)I", NULL
},
{
"OnPublicationChanged", "(Lorg/doubango/tinyWRAP/PublicationEvent;)I", NULL
}
};
@ -506,7 +536,7 @@ void SwigDirector_SipCallback::swig_connect_director(JNIEnv *jenv, jobject jself
baseclass = (jclass) jenv->NewGlobalRef(baseclass);
}
bool derived = (jenv->IsSameObject(baseclass, jcls) ? false : true);
for (int i = 0; i < 2; ++i) {
for (int i = 0; i < 3; ++i) {
if (!methods[i].base_methid) {
methods[i].base_methid = jenv->GetMethodID(baseclass, methods[i].mname, methods[i].mdesc);
if (!methods[i].base_methid) return;
@ -548,7 +578,7 @@ int SwigDirector_SipDebugCallback::OnDebugInfo(char const *message) {
jmessage = jenv->NewStringUTF((const char *)message);
if (!jmessage) return c_result;
}
jresult = (jint) jenv->CallStaticIntMethod(Swig::jclass_tinyWRAPJNI, Swig::director_methids[2], swigjobj, jmessage);
jresult = (jint) jenv->CallStaticIntMethod(Swig::jclass_tinyWRAPJNI, Swig::director_methids[3], swigjobj, jmessage);
if (jenv->ExceptionOccurred()) return c_result;
c_result = (int)jresult;
} else {
@ -576,7 +606,7 @@ int SwigDirector_SipDebugCallback::OnDebugWarn(char const *message) {
jmessage = jenv->NewStringUTF((const char *)message);
if (!jmessage) return c_result;
}
jresult = (jint) jenv->CallStaticIntMethod(Swig::jclass_tinyWRAPJNI, Swig::director_methids[3], swigjobj, jmessage);
jresult = (jint) jenv->CallStaticIntMethod(Swig::jclass_tinyWRAPJNI, Swig::director_methids[4], swigjobj, jmessage);
if (jenv->ExceptionOccurred()) return c_result;
c_result = (int)jresult;
} else {
@ -604,7 +634,7 @@ int SwigDirector_SipDebugCallback::OnDebugError(char const *message) {
jmessage = jenv->NewStringUTF((const char *)message);
if (!jmessage) return c_result;
}
jresult = (jint) jenv->CallStaticIntMethod(Swig::jclass_tinyWRAPJNI, Swig::director_methids[4], swigjobj, jmessage);
jresult = (jint) jenv->CallStaticIntMethod(Swig::jclass_tinyWRAPJNI, Swig::director_methids[5], swigjobj, jmessage);
if (jenv->ExceptionOccurred()) return c_result;
c_result = (int)jresult;
} else {
@ -632,7 +662,7 @@ int SwigDirector_SipDebugCallback::OnDebugFatal(char const *message) {
jmessage = jenv->NewStringUTF((const char *)message);
if (!jmessage) return c_result;
}
jresult = (jint) jenv->CallStaticIntMethod(Swig::jclass_tinyWRAPJNI, Swig::director_methids[5], swigjobj, jmessage);
jresult = (jint) jenv->CallStaticIntMethod(Swig::jclass_tinyWRAPJNI, Swig::director_methids[6], swigjobj, jmessage);
if (jenv->ExceptionOccurred()) return c_result;
c_result = (int)jresult;
} else {
@ -777,21 +807,6 @@ SWIGEXPORT void JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_delete_1SipMessag
}
SWIGEXPORT void * JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_SipMessage_1getSipContent(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
void * jresult = 0 ;
SipMessage *arg1 = (SipMessage *) 0 ;
void *result = 0 ;
(void)jenv;
(void)jcls;
(void)jarg1_;
arg1 = *(SipMessage **)&jarg1;
result = (void *)((SipMessage const *)arg1)->getSipContent();
jresult = result;
return jresult;
}
SWIGEXPORT jstring JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_SipMessage_1getSipHeaderValue_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jstring jarg2, jlong jarg3) {
jstring jresult = 0 ;
SipMessage *arg1 = (SipMessage *) 0 ;
@ -810,7 +825,7 @@ SWIGEXPORT jstring JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_SipMessage_1ge
}
arg3 = (unsigned int)jarg3;
result = (char *)(arg1)->getSipHeaderValue((char const *)arg2,arg3);
if(result) jresult = jenv->NewStringUTF((const char *)result);
if (result) jresult = jenv->NewStringUTF((const char *)result);
if (arg2) jenv->ReleaseStringUTFChars(jarg2, (const char *)arg2);
delete [] result;
return jresult;
@ -833,7 +848,7 @@ SWIGEXPORT jstring JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_SipMessage_1ge
if (!arg2) return 0;
}
result = (char *)(arg1)->getSipHeaderValue((char const *)arg2);
if(result) jresult = jenv->NewStringUTF((const char *)result);
if (result) jresult = jenv->NewStringUTF((const char *)result);
if (arg2) jenv->ReleaseStringUTFChars(jarg2, (const char *)arg2);
delete [] result;
return jresult;
@ -864,7 +879,7 @@ SWIGEXPORT jstring JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_SipMessage_1ge
}
arg4 = (unsigned int)jarg4;
result = (char *)(arg1)->getSipHeaderParamValue((char const *)arg2,(char const *)arg3,arg4);
if(result) jresult = jenv->NewStringUTF((const char *)result);
if (result) jresult = jenv->NewStringUTF((const char *)result);
if (arg2) jenv->ReleaseStringUTFChars(jarg2, (const char *)arg2);
if (arg3) jenv->ReleaseStringUTFChars(jarg3, (const char *)arg3);
return jresult;
@ -893,7 +908,7 @@ SWIGEXPORT jstring JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_SipMessage_1ge
if (!arg3) return 0;
}
result = (char *)(arg1)->getSipHeaderParamValue((char const *)arg2,(char const *)arg3);
if(result) jresult = jenv->NewStringUTF((const char *)result);
if (result) jresult = jenv->NewStringUTF((const char *)result);
if (arg2) jenv->ReleaseStringUTFChars(jarg2, (const char *)arg2);
if (arg3) jenv->ReleaseStringUTFChars(jarg3, (const char *)arg3);
return jresult;
@ -947,7 +962,7 @@ SWIGEXPORT jstring JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_SipEvent_1getP
(void)jarg1_;
arg1 = *(SipEvent **)&jarg1;
result = (char *)((SipEvent const *)arg1)->getPhrase();
if(result) jresult = jenv->NewStringUTF((const char *)result);
if (result) jresult = jenv->NewStringUTF((const char *)result);
return jresult;
}
@ -1192,6 +1207,117 @@ SWIGEXPORT jboolean JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_SipSession_1s
}
SWIGEXPORT jlong JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_new_1PublicationEvent(JNIEnv *jenv, jclass jcls) {
jlong jresult = 0 ;
PublicationEvent *result = 0 ;
(void)jenv;
(void)jcls;
result = (PublicationEvent *)new PublicationEvent();
*(PublicationEvent **)&jresult = result;
return jresult;
}
SWIGEXPORT void JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_delete_1PublicationEvent(JNIEnv *jenv, jclass jcls, jlong jarg1) {
PublicationEvent *arg1 = (PublicationEvent *) 0 ;
(void)jenv;
(void)jcls;
arg1 = *(PublicationEvent **)&jarg1;
delete arg1;
}
SWIGEXPORT jint JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_PublicationEvent_1getType(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
jint jresult = 0 ;
PublicationEvent *arg1 = (PublicationEvent *) 0 ;
tsip_publish_event_type_t result;
(void)jenv;
(void)jcls;
(void)jarg1_;
arg1 = *(PublicationEvent **)&jarg1;
result = (tsip_publish_event_type_t)((PublicationEvent const *)arg1)->getType();
jresult = (jint)result;
return jresult;
}
SWIGEXPORT jlong JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_PublicationEvent_1getSession(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
jlong jresult = 0 ;
PublicationEvent *arg1 = (PublicationEvent *) 0 ;
PublicationSession *result = 0 ;
(void)jenv;
(void)jcls;
(void)jarg1_;
arg1 = *(PublicationEvent **)&jarg1;
result = (PublicationSession *)((PublicationEvent const *)arg1)->getSession();
*(PublicationSession **)&jresult = result;
return jresult;
}
SWIGEXPORT jlong JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_new_1PublicationSession(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
jlong jresult = 0 ;
SipStack *arg1 = (SipStack *) 0 ;
PublicationSession *result = 0 ;
(void)jenv;
(void)jcls;
(void)jarg1_;
arg1 = *(SipStack **)&jarg1;
result = (PublicationSession *)new PublicationSession(arg1);
*(PublicationSession **)&jresult = result;
return jresult;
}
SWIGEXPORT void JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_delete_1PublicationSession(JNIEnv *jenv, jclass jcls, jlong jarg1) {
PublicationSession *arg1 = (PublicationSession *) 0 ;
(void)jenv;
(void)jcls;
arg1 = *(PublicationSession **)&jarg1;
delete arg1;
}
SWIGEXPORT jboolean JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_PublicationSession_1Publish(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, void * jarg2, jlong jarg3) {
jboolean jresult = 0 ;
PublicationSession *arg1 = (PublicationSession *) 0 ;
void *arg2 = (void *) 0 ;
unsigned int arg3 ;
bool result;
(void)jenv;
(void)jcls;
(void)jarg1_;
arg1 = *(PublicationSession **)&jarg1;
arg2 = jarg2;
arg3 = (unsigned int)jarg3;
result = (bool)(arg1)->Publish((void const *)arg2,arg3);
jresult = (jboolean)result;
return jresult;
}
SWIGEXPORT jboolean JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_PublicationSession_1UnPublish(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
jboolean jresult = 0 ;
PublicationSession *arg1 = (PublicationSession *) 0 ;
bool result;
(void)jenv;
(void)jcls;
(void)jarg1_;
arg1 = *(PublicationSession **)&jarg1;
result = (bool)(arg1)->UnPublish();
jresult = (jboolean)result;
return jresult;
}
SWIGEXPORT jlong JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_new_1RegistrationEvent(JNIEnv *jenv, jclass jcls) {
jlong jresult = 0 ;
RegistrationEvent *result = 0 ;
@ -1500,6 +1626,42 @@ SWIGEXPORT jint JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_SipCallback_1OnSu
}
SWIGEXPORT jint JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_SipCallback_1OnPublicationChanged(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
jint jresult = 0 ;
SipCallback *arg1 = (SipCallback *) 0 ;
PublicationEvent *arg2 = (PublicationEvent *) 0 ;
int result;
(void)jenv;
(void)jcls;
(void)jarg1_;
(void)jarg2_;
arg1 = *(SipCallback **)&jarg1;
arg2 = *(PublicationEvent **)&jarg2;
result = (int)(arg1)->OnPublicationChanged((PublicationEvent const *)arg2);
jresult = (jint)result;
return jresult;
}
SWIGEXPORT jint JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_SipCallback_1OnPublicationChangedSwigExplicitSipCallback(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) {
jint jresult = 0 ;
SipCallback *arg1 = (SipCallback *) 0 ;
PublicationEvent *arg2 = (PublicationEvent *) 0 ;
int result;
(void)jenv;
(void)jcls;
(void)jarg1_;
(void)jarg2_;
arg1 = *(SipCallback **)&jarg1;
arg2 = *(PublicationEvent **)&jarg2;
result = (int)(arg1)->SipCallback::OnPublicationChanged((PublicationEvent const *)arg2);
jresult = (jint)result;
return jresult;
}
SWIGEXPORT void JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_SipCallback_1director_1connect(JNIEnv *jenv, jclass jcls, jobject jself, jlong objarg, jboolean jswig_mem_own, jboolean jweak_global) {
SipCallback *obj = *((SipCallback **)&objarg);
(void)jcls;
@ -2154,6 +2316,22 @@ SWIGEXPORT jboolean JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_SipStack_1sto
}
SWIGEXPORT jlong JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_SWIGPublicationEventUpcast(JNIEnv *jenv, jclass jcls, jlong jarg1) {
jlong baseptr = 0;
(void)jenv;
(void)jcls;
*(SipEvent **)&baseptr = *(PublicationEvent **)&jarg1;
return baseptr;
}
SWIGEXPORT jlong JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_SWIGPublicationSessionUpcast(JNIEnv *jenv, jclass jcls, jlong jarg1) {
jlong baseptr = 0;
(void)jenv;
(void)jcls;
*(SipSession **)&baseptr = *(PublicationSession **)&jarg1;
return baseptr;
}
SWIGEXPORT jlong JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_SWIGRegistrationEventUpcast(JNIEnv *jenv, jclass jcls, jlong jarg1) {
jlong baseptr = 0;
(void)jenv;
@ -2200,13 +2378,16 @@ SWIGEXPORT void JNICALL Java_org_doubango_tinyWRAP_tinyWRAPJNI_swig_1module_1ini
static struct {
const char *method;
const char *signature;
} methods[6] = {
} methods[7] = {
{
"SwigDirector_SipCallback_OnRegistrationChanged", "(Lorg/doubango/tinyWRAP/SipCallback;J)I"
},
{
"SwigDirector_SipCallback_OnSubscriptionChanged", "(Lorg/doubango/tinyWRAP/SipCallback;J)I"
},
{
"SwigDirector_SipCallback_OnPublicationChanged", "(Lorg/doubango/tinyWRAP/SipCallback;J)I"
},
{
"SwigDirector_SipDebugCallback_OnDebugInfo", "(Lorg/doubango/tinyWRAP/SipDebugCallback;Ljava/lang/String;)I"
},

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* This file is not intended to be easily readable and contains a number of
* coding conventions designed to improve portability and efficiency. Do not make
@ -19,12 +19,13 @@ public:
virtual ~SwigDirector_SipCallback();
virtual int OnRegistrationChanged(RegistrationEvent const *e);
virtual int OnSubscriptionChanged(SubscriptionEvent const *e);
virtual int OnPublicationChanged(PublicationEvent const *e);
public:
bool swig_overrides(int n) {
return (n < 2 ? swig_override[n] : false);
return (n < 3 ? swig_override[n] : false);
}
protected:
bool swig_override[2];
bool swig_override[3];
};
class SwigDirector_SipDebugCallback : public SipDebugCallback, public Swig::Director {

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.

View File

@ -0,0 +1,58 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.
* ----------------------------------------------------------------------------- */
package org.doubango.tinyWRAP;
public enum tsip_publish_event_type_t {
tsip_i_publish,
tsip_ai_publish,
tsip_o_publish,
tsip_ao_publish,
tsip_i_unpublish,
tsip_ai_unpublish,
tsip_o_unpublish,
tsip_ao_unpublish;
public final int swigValue() {
return swigValue;
}
public static tsip_publish_event_type_t swigToEnum(int swigValue) {
tsip_publish_event_type_t[] swigValues = tsip_publish_event_type_t.class.getEnumConstants();
if (swigValue < swigValues.length && swigValue >= 0 && swigValues[swigValue].swigValue == swigValue)
return swigValues[swigValue];
for (tsip_publish_event_type_t swigEnum : swigValues)
if (swigEnum.swigValue == swigValue)
return swigEnum;
throw new IllegalArgumentException("No enum " + tsip_publish_event_type_t.class + " with value " + swigValue);
}
@SuppressWarnings("unused")
private tsip_publish_event_type_t() {
this.swigValue = SwigNext.next++;
}
@SuppressWarnings("unused")
private tsip_publish_event_type_t(int swigValue) {
this.swigValue = swigValue;
SwigNext.next = swigValue+1;
}
@SuppressWarnings("unused")
private tsip_publish_event_type_t(tsip_publish_event_type_t swigEnum) {
this.swigValue = swigEnum.swigValue;
SwigNext.next = this.swigValue+1;
}
private final int swigValue;
private static class SwigNext {
private static int next = 0;
}
}

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* Do not make changes to this file unless you know what you are doing--modify
* the SWIG interface file instead.

View File

@ -1,5 +1,5 @@
# This file was automatically generated by SWIG (http://www.swig.org).
# Version 1.3.39
# Version 1.3.40
#
# Do not make changes to this file unless you know what you are doing--modify
# the SWIG interface file instead.
@ -112,7 +112,6 @@ sub DESTROY {
}
}
*getSipContent = *tinyWRAPc::SipMessage_getSipContent;
*getSipHeaderValue = *tinyWRAPc::SipMessage_getSipHeaderValue;
*getSipHeaderParamValue = *tinyWRAPc::SipMessage_getSipHeaderParamValue;
sub DISOWN {
@ -213,6 +212,84 @@ sub ACQUIRE {
}
############# Class : tinyWRAP::PublicationEvent ##############
package tinyWRAP::PublicationEvent;
use vars qw(@ISA %OWNER %ITERATORS %BLESSEDMEMBERS);
@ISA = qw( tinyWRAP::SipEvent tinyWRAP );
%OWNER = ();
%ITERATORS = ();
sub new {
my $pkg = shift;
my $self = tinyWRAPc::new_PublicationEvent(@_);
bless $self, $pkg if defined($self);
}
sub DESTROY {
return unless $_[0]->isa('HASH');
my $self = tied(%{$_[0]});
return unless defined $self;
delete $ITERATORS{$self};
if (exists $OWNER{$self}) {
tinyWRAPc::delete_PublicationEvent($self);
delete $OWNER{$self};
}
}
*getType = *tinyWRAPc::PublicationEvent_getType;
*getSession = *tinyWRAPc::PublicationEvent_getSession;
sub DISOWN {
my $self = shift;
my $ptr = tied(%$self);
delete $OWNER{$ptr};
}
sub ACQUIRE {
my $self = shift;
my $ptr = tied(%$self);
$OWNER{$ptr} = 1;
}
############# Class : tinyWRAP::PublicationSession ##############
package tinyWRAP::PublicationSession;
use vars qw(@ISA %OWNER %ITERATORS %BLESSEDMEMBERS);
@ISA = qw( tinyWRAP::SipSession tinyWRAP );
%OWNER = ();
%ITERATORS = ();
sub new {
my $pkg = shift;
my $self = tinyWRAPc::new_PublicationSession(@_);
bless $self, $pkg if defined($self);
}
sub DESTROY {
return unless $_[0]->isa('HASH');
my $self = tied(%{$_[0]});
return unless defined $self;
delete $ITERATORS{$self};
if (exists $OWNER{$self}) {
tinyWRAPc::delete_PublicationSession($self);
delete $OWNER{$self};
}
}
*Publish = *tinyWRAPc::PublicationSession_Publish;
*UnPublish = *tinyWRAPc::PublicationSession_UnPublish;
sub DISOWN {
my $self = shift;
my $ptr = tied(%$self);
delete $OWNER{$ptr};
}
sub ACQUIRE {
my $self = shift;
my $ptr = tied(%$self);
$OWNER{$ptr} = 1;
}
############# Class : tinyWRAP::RegistrationEvent ##############
package tinyWRAP::RegistrationEvent;
@ -395,6 +472,7 @@ sub DESTROY {
*OnRegistrationChanged = *tinyWRAPc::SipCallback_OnRegistrationChanged;
*OnSubscriptionChanged = *tinyWRAPc::SipCallback_OnSubscriptionChanged;
*OnPublicationChanged = *tinyWRAPc::SipCallback_OnPublicationChanged;
sub DISOWN {
my $self = shift;
my $ptr = tied(%$self);
@ -571,4 +649,12 @@ package tinyWRAP;
*tsip_ai_notify = *tinyWRAPc::tsip_ai_notify;
*tsip_o_notify = *tinyWRAPc::tsip_o_notify;
*tsip_ao_notify = *tinyWRAPc::tsip_ao_notify;
*tsip_i_publish = *tinyWRAPc::tsip_i_publish;
*tsip_ai_publish = *tinyWRAPc::tsip_ai_publish;
*tsip_o_publish = *tinyWRAPc::tsip_o_publish;
*tsip_ao_publish = *tinyWRAPc::tsip_ao_publish;
*tsip_i_unpublish = *tinyWRAPc::tsip_i_unpublish;
*tsip_ai_unpublish = *tinyWRAPc::tsip_ai_unpublish;
*tsip_o_unpublish = *tinyWRAPc::tsip_o_unpublish;
*tsip_ao_unpublish = *tinyWRAPc::tsip_ao_unpublish;
1;

File diff suppressed because it is too large Load Diff

View File

@ -1,5 +1,5 @@
# This file was automatically generated by SWIG (http://www.swig.org).
# Version 1.3.39
# Version 1.3.40
#
# Do not make changes to this file unless you know what you are doing--modify
# the SWIG interface file instead.
@ -10,12 +10,18 @@ if version_info >= (2,6,0):
def swig_import_helper():
from os.path import dirname
import imp
fp = None
try:
fp, pathname, description = imp.find_module('_tinyWRAP', [dirname(__file__)])
_mod = imp.load_module('_tinyWRAP', fp, pathname, description)
finally:
if fp is not None: fp.close()
return _mod
except ImportError:
import _tinyWRAP
return _tinyWRAP
if fp is not None:
try:
_mod = imp.load_module('_tinyWRAP', fp, pathname, description)
finally:
fp.close()
return _mod
_tinyWRAP = swig_import_helper()
del swig_import_helper
else:
@ -95,7 +101,6 @@ class SipMessage(_object):
except: self.this = this
__swig_destroy__ = _tinyWRAP.delete_SipMessage
__del__ = lambda self : None;
def getSipContent(self): return _tinyWRAP.SipMessage_getSipContent(self)
def getSipHeaderValue(self, *args): return _tinyWRAP.SipMessage_getSipHeaderValue(self, *args)
def getSipHeaderParamValue(self, *args): return _tinyWRAP.SipMessage_getSipHeaderParamValue(self, *args)
SipMessage_swigregister = _tinyWRAP.SipMessage_swigregister
@ -142,6 +147,44 @@ class SipSession(_object):
SipSession_swigregister = _tinyWRAP.SipSession_swigregister
SipSession_swigregister(SipSession)
class PublicationEvent(SipEvent):
__swig_setmethods__ = {}
for _s in [SipEvent]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
__setattr__ = lambda self, name, value: _swig_setattr(self, PublicationEvent, name, value)
__swig_getmethods__ = {}
for _s in [SipEvent]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
__getattr__ = lambda self, name: _swig_getattr(self, PublicationEvent, name)
__repr__ = _swig_repr
def __init__(self):
this = _tinyWRAP.new_PublicationEvent()
try: self.this.append(this)
except: self.this = this
__swig_destroy__ = _tinyWRAP.delete_PublicationEvent
__del__ = lambda self : None;
def getType(self): return _tinyWRAP.PublicationEvent_getType(self)
def getSession(self): return _tinyWRAP.PublicationEvent_getSession(self)
PublicationEvent_swigregister = _tinyWRAP.PublicationEvent_swigregister
PublicationEvent_swigregister(PublicationEvent)
class PublicationSession(SipSession):
__swig_setmethods__ = {}
for _s in [SipSession]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
__setattr__ = lambda self, name, value: _swig_setattr(self, PublicationSession, name, value)
__swig_getmethods__ = {}
for _s in [SipSession]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
__getattr__ = lambda self, name: _swig_getattr(self, PublicationSession, name)
__repr__ = _swig_repr
def __init__(self, *args):
this = _tinyWRAP.new_PublicationSession(*args)
try: self.this.append(this)
except: self.this = this
__swig_destroy__ = _tinyWRAP.delete_PublicationSession
__del__ = lambda self : None;
def Publish(self, *args): return _tinyWRAP.PublicationSession_Publish(self, *args)
def UnPublish(self): return _tinyWRAP.PublicationSession_UnPublish(self)
PublicationSession_swigregister = _tinyWRAP.PublicationSession_swigregister
PublicationSession_swigregister(PublicationSession)
class RegistrationEvent(SipEvent):
__swig_setmethods__ = {}
for _s in [SipEvent]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
@ -236,6 +279,7 @@ class SipCallback(_object):
__del__ = lambda self : None;
def OnRegistrationChanged(self, *args): return _tinyWRAP.SipCallback_OnRegistrationChanged(self, *args)
def OnSubscriptionChanged(self, *args): return _tinyWRAP.SipCallback_OnSubscriptionChanged(self, *args)
def OnPublicationChanged(self, *args): return _tinyWRAP.SipCallback_OnPublicationChanged(self, *args)
def __disown__(self):
self.this.disown()
_tinyWRAP.disown_SipCallback(self)
@ -346,5 +390,13 @@ tsip_i_notify = _tinyWRAP.tsip_i_notify
tsip_ai_notify = _tinyWRAP.tsip_ai_notify
tsip_o_notify = _tinyWRAP.tsip_o_notify
tsip_ao_notify = _tinyWRAP.tsip_ao_notify
tsip_i_publish = _tinyWRAP.tsip_i_publish
tsip_ai_publish = _tinyWRAP.tsip_ai_publish
tsip_o_publish = _tinyWRAP.tsip_o_publish
tsip_ao_publish = _tinyWRAP.tsip_ao_publish
tsip_i_unpublish = _tinyWRAP.tsip_i_unpublish
tsip_ai_unpublish = _tinyWRAP.tsip_ai_unpublish
tsip_o_unpublish = _tinyWRAP.tsip_o_unpublish
tsip_ao_unpublish = _tinyWRAP.tsip_ao_unpublish

File diff suppressed because it is too large Load Diff

View File

@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------------
* This file was automatically generated by SWIG (http://www.swig.org).
* Version 1.3.39
* Version 1.3.40
*
* This file is not intended to be easily readable and contains a number of
* coding conventions designed to improve portability and efficiency. Do not make
@ -22,6 +22,7 @@ public:
virtual ~SwigDirector_SipCallback();
virtual int OnRegistrationChanged(RegistrationEvent const *e);
virtual int OnSubscriptionChanged(SubscriptionEvent const *e);
virtual int OnPublicationChanged(PublicationEvent const *e);
/* Internal Director utilities */
@ -55,7 +56,7 @@ private:
return method;
}
private:
mutable swig::SwigVar_PyObject vtable[2];
mutable swig::SwigVar_PyObject vtable[3];
#endif
};

View File

@ -31,6 +31,8 @@ namespace test
this.buttonRegister = new System.Windows.Forms.Button();
this.buttonUnRegister = new System.Windows.Forms.Button();
this.textBoxDebug = new System.Windows.Forms.TextBox();
this.buttonPublish = new System.Windows.Forms.Button();
this.buttonUnPublish = new System.Windows.Forms.Button();
this.SuspendLayout();
//
// buttonRegister
@ -61,11 +63,33 @@ namespace test
this.textBoxDebug.Size = new System.Drawing.Size(262, 70);
this.textBoxDebug.TabIndex = 2;
//
// buttonPublish
//
this.buttonPublish.Location = new System.Drawing.Point(12, 234);
this.buttonPublish.Name = "buttonPublish";
this.buttonPublish.Size = new System.Drawing.Size(75, 23);
this.buttonPublish.TabIndex = 3;
this.buttonPublish.Text = "Publish";
this.buttonPublish.UseVisualStyleBackColor = true;
this.buttonPublish.Click += new System.EventHandler(this.buttonPublish_Click);
//
// buttonUnPublish
//
this.buttonUnPublish.Location = new System.Drawing.Point(199, 235);
this.buttonUnPublish.Name = "buttonUnPublish";
this.buttonUnPublish.Size = new System.Drawing.Size(75, 23);
this.buttonUnPublish.TabIndex = 4;
this.buttonUnPublish.Text = "UnPublish";
this.buttonUnPublish.UseVisualStyleBackColor = true;
this.buttonUnPublish.Click += new System.EventHandler(this.buttonUnPublish_Click);
//
// Form1
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(286, 374);
this.Controls.Add(this.buttonUnPublish);
this.Controls.Add(this.buttonPublish);
this.Controls.Add(this.textBoxDebug);
this.Controls.Add(this.buttonUnRegister);
this.Controls.Add(this.buttonRegister);
@ -81,6 +105,8 @@ namespace test
private System.Windows.Forms.Button buttonRegister;
private System.Windows.Forms.Button buttonUnRegister;
private System.Windows.Forms.TextBox textBoxDebug;
private System.Windows.Forms.Button buttonPublish;
private System.Windows.Forms.Button buttonUnPublish;
}
}

View File

@ -10,19 +10,61 @@ namespace test
{
public partial class Form1 : Form
{
const String REALM = "ims.inexbee.com";
/*const String REALM = "ims.inexbee.com";
const String USER = "mamadou";
const String PASSWORD = "mamadou";
const String PROXY_CSCF_IP = "192.168.16.225";
const uint PROXY_CSCF_PORT = 4060;
const uint PROXY_CSCF_PORT = 4060;*/
const String REALM = "micromethod.com";
const String USER = "mamadou";
const String PASSWORD = "mamadou";
const String PROXY_CSCF_IP = "192.168.16.104";
const uint PROXY_CSCF_PORT = 5060;
RegistrationSession regSession = null;
PublicationSession pubSession = null;
MyCallback callback = null;
SipStack stack = null;
public delegate void PrintDebug(String text);
public PrintDebug mydel;
const String PUBLISH_PAYLOAD = "<?xml version=\"1.0\" encoding=\"utf-8\"?>" +
"<presence xmlns:cp=\"urn:ietf:params:xml:ns:pidf:cipid\" xmlns:caps=\"urn:ietf:params:xml:ns:pidf:caps\" xmlns:rpid=\"urn:ietf:params:xml:ns:pidf:rpid\" xmlns:pdm=\"urn:ietf:params:xml:ns:pidf:data-model\" xmlns:p=\"urn:ietf:params:xml:ns:pidf-diff\" xmlns:op=\"urn:oma:xml:prs:pidf:oma-pres\" entity=\"sip:bob@ims.inexbee.com\" xmlns=\"urn:ietf:params:xml:ns:pidf\">" +
"<pdm:person id=\"RPVRYNJH\">" +
"<op:overriding-willingness>" +
"<op:basic>open</op:basic>" +
"</op:overriding-willingness>" +
"<rpid:activities>" +
"<rpid:busy />" +
"</rpid:activities>" +
"<rpid:mood>" +
"<rpid:guilty />" +
"</rpid:mood>" +
"<cp:homepage>http://www.mercuro.net</cp:homepage>" +
"<pdm:note>Come share with me RCS Experience</pdm:note>" +
"</pdm:person>" +
"<pdm:device id=\"d0001\">" +
"<status>" +
"<basic>open</basic>" +
"</status>" +
"<caps:devcaps>" +
"<caps:mobility>" +
"<caps:supported>" +
"<caps:fixed />" +
"</caps:supported>" +
"</caps:mobility>" +
"</caps:devcaps>" +
"<op:network-availability>" +
"<op:network id=\"IMS\">" +
"<op:active />" +
"</op:network>" +
"</op:network-availability>" +
"<pdm:deviceID>urn:uuid:3ca50bcb-7a67-44f1-afd0-994a55f930f4</pdm:deviceID>" +
"</pdm:device>" +
"</presence>";
public Form1()
{
InitializeComponent();
@ -35,11 +77,7 @@ namespace test
callback = new MyCallback(this);
/* Create and configure the IMS/LTE stack */
// stack = new SipStack(callback, String.Format("sip:{0}", REALM), String.Format("{0}@{1}", USER, REALM), String.Format("sip:{0}@{1}", USER, REALM));
stack = new SipStack(callback, "sip:dd", "aaaa", "sip:444@example.com");
success = stack.setRealm(String.Format("sip:{0}", REALM));
success = stack.setIMPI(String.Format("{0}@{1}", USER, REALM));
success = stack.setIMPU(String.Format("sip:{0}@{1}", USER, REALM));
stack = new SipStack(callback, String.Format("sip:{0}", REALM), String.Format("{0}@{1}", USER, REALM), String.Format("sip:{0}@{1}", USER, REALM));
if (!stack.isValid())
{
@ -55,7 +93,7 @@ namespace test
/* set password */
success = stack.setPassword(PASSWORD);
/* Sets Proxy-CSCF */
success = stack.setProxyCSCF(PROXY_CSCF_IP, PROXY_CSCF_PORT, "tcp", "ipv4");
success = stack.setProxyCSCF(PROXY_CSCF_IP, PROXY_CSCF_PORT, "udp", "ipv4");
/* Starts the stack */
success = stack.start();
}
@ -81,6 +119,28 @@ namespace test
}
}
private void buttonPublish_Click(object sender, EventArgs e)
{
if (this.pubSession == null)
{
this.pubSession = new PublicationSession(stack);
this.pubSession.addHeader("Content-Type", "application/pidf+xml");
this.pubSession.addHeader("Event", "presence");
this.regSession.setExpires(30);
byte[] payload = Encoding.UTF8.GetBytes(PUBLISH_PAYLOAD);
this.pubSession.Publish(payload, (uint)payload.Length);
}
}
private void buttonUnPublish_Click(object sender, EventArgs e)
{
if (this.pubSession != null)
{
this.pubSession.UnPublish();
}
}
void PrintDebugMethod(String text)
{
this.textBoxDebug.Text = text;
@ -91,8 +151,6 @@ namespace test
public class MyCallback : SipCallback
{
Form1 form;
@ -133,5 +191,31 @@ namespace test
return 0;
}
public override int OnPublicationChanged(PublicationEvent e)
{
short code = e.getCode();
tsip_publish_event_type_t type = e.getType();
String text;
PublicationSession session = e.getSession();
switch (type){
default:
break;
}
text = String.Format("OnPublicationChanged() ==> {0}:{1}", code, e.getPhrase());
if (this.form.InvokeRequired)
{
this.form.Invoke(this.form.mydel, new object[] { text });
}
return 0;
}
}
}

View File

@ -36,6 +36,12 @@
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="..\..\..\csharp\PublicationEvent.cs">
<Link>PublicationEvent.cs</Link>
</Compile>
<Compile Include="..\..\..\csharp\PublicationSession.cs">
<Link>PublicationSession.cs</Link>
</Compile>
<Compile Include="..\..\..\csharp\RegistrationEvent.cs">
<Link>RegistrationEvent.cs</Link>
</Compile>
@ -54,6 +60,9 @@
<Compile Include="..\..\..\csharp\SipEvent.cs">
<Link>SipEvent.cs</Link>
</Compile>
<Compile Include="..\..\..\csharp\SipMessage.cs">
<Link>SipMessage.cs</Link>
</Compile>
<Compile Include="..\..\..\csharp\SipSession.cs">
<Link>SipSession.cs</Link>
</Compile>
@ -78,6 +87,9 @@
<Compile Include="..\..\..\csharp\tsip_event_type_t.cs">
<Link>tsip_event_type_t.cs</Link>
</Compile>
<Compile Include="..\..\..\csharp\tsip_publish_event_type_t.cs">
<Link>tsip_publish_event_type_t.cs</Link>
</Compile>
<Compile Include="..\..\..\csharp\tsip_register_event_type_t.cs">
<Link>tsip_register_event_type_t.cs</Link>
</Compile>

View File

@ -182,6 +182,14 @@
RelativePath="..\..\_common\MessagingEvent.cxx"
>
</File>
<File
RelativePath="..\..\_common\PublicationEvent.cxx"
>
</File>
<File
RelativePath="..\..\_common\PublicationSession.cxx"
>
</File>
<File
RelativePath="..\..\_common\RegistrationEvent.cxx"
>
@ -206,6 +214,10 @@
RelativePath="..\..\_common\SipEvent.cxx"
>
</File>
<File
RelativePath="..\..\_common\SipMessage.cxx"
>
</File>
<File
RelativePath="..\..\_common\SipSession.cxx"
>
@ -248,6 +260,14 @@
RelativePath="..\..\_common\MessagingEvent.h"
>
</File>
<File
RelativePath="..\..\_common\PublicationEvent.h"
>
</File>
<File
RelativePath="..\..\_common\PublicationSession.h"
>
</File>
<File
RelativePath="..\..\_common\RegistrationEvent.h"
>
@ -272,6 +292,10 @@
RelativePath="..\..\_common\SipEvent.h"
>
</File>
<File
RelativePath="..\..\_common\SipMessage.h"
>
</File>
<File
RelativePath="..\..\_common\SipSession.h"
>
@ -307,17 +331,25 @@
UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
>
<File
RelativePath="..\..\_common\SipStack.i"
RelativePath="..\..\csharp\csharp.i"
>
</File>
<File
RelativePath="..\..\_common\tinyWRAP.i"
<Filter
Name="common"
>
</File>
<File
RelativePath="..\..\_common\XcapStack.i"
>
</File>
<File
RelativePath="..\..\_common\SipStack.i"
>
</File>
<File
RelativePath="..\..\_common\tinyWRAP.i"
>
</File>
<File
RelativePath="..\..\_common\XcapStack.i"
>
</File>
</Filter>
</Filter>
</Files>
<Globals>

View File

@ -155,7 +155,7 @@ int thttp_dialog_Transfering_2_Transfering_X_401_407(va_list *app)
ret = thttp_dialog_send_request(self);
/* very important: do not break the state machine for transport error events
* => let the transport layer do it for us throught (transport_error).
* => let the transport layer do it for us (throught tnet_transport_error event).
* => transport_error event will be queued and sent after this event (i_message)
*/
if(ret == THTTP_DIALOG_TRANSPORT_ERROR_CODE){