Exemplo n.º 1
0
        public int HelloSend(uint serial, out string name, HelloRecvDelegate helloRecv)
        {
            Udbus.Serialization.UdbusMessageBuilder builder = new Udbus.Serialization.UdbusMessageBuilder();
            Udbus.Serialization.NMessageHandle.UdbusMessageHandle msgHandleSend = null;
            int result = -1;

            name = default(string);
            Udbus.Serialization.DbusConnectionParameters connectionParametersDbus = defaultConnectionParametersDbus;
            try
            {
                result = builder.UdbusMethodMessage(serial, connectionParametersDbus, "Hello").Result;
                if ((result == 0))
                {
                    msgHandleSend = builder.Message;
                    result        = this.Send(msgHandleSend);
                    if ((result != 0))
                    {
                        throw Udbus.Serialization.Exceptions.UdbusMethodSendException.Create("Hello", result, connectionParametersDbus);
                    }
                }
            }
            finally
            {
                if ((msgHandleSend != null))
                {
                    msgHandleSend.Dispose();
                }
            }

            if ((result == 0))
            {
                result = helloRecv(out name, this, serial, connectionParametersDbus);
            }
            return(result);
        }
Exemplo n.º 2
0
        /// <summary>
        /// Wrap an existing entry with one which will substitute in alternative DbusConnectionParams when the WCF service is created.
        /// </summary>
        /// <param name="registration">Registration data.</param>
        /// <param name="dbusConnectionParams">Dbus Connection parameters replacing those specified at creation time.</param>
        /// <returns>true if found an entry to wrap, otherwise false.</returns>
        public bool WrapReplaceDbusConnectionParams(Udbus.WCF.Service.Host.DbusServiceRegistrationParams registration,
                                                    Udbus.Serialization.DbusConnectionParameters dbusConnectionParams)
        {
            Udbus.WCF.Service.Host.IMakeServiceHostCreationData target;
            bool result = this.dict.TryGetValue(registration, out target);

            if (result) // If found entry
            {
                // Replace with a wrapper thatn will change the connection params.
                MakeServiceHostWithDifferentDbusParams replacement = new MakeServiceHostWithDifferentDbusParams(target, dbusConnectionParams);
                this.dict[registration] = replacement;
            } // Ends if found entry

            return(result);
        }
Exemplo n.º 3
0
        internal static com.citrix.xenclient.xenmgr.diag.diagService CreateDbusDiag(out Udbus.Core.ServiceConnectionParams serviceConnectionParams,
                                                                                    Udbus.Core.Logging.ILog log, Udbus.Serialization.UdbusDelegates.D_io_debug io_debug)
        {
            // Create a V4V connection.
            Udbus.v4v.v4vConnection           connection;
            System.Threading.ManualResetEvent stop = new System.Threading.ManualResetEvent(false);
            DbusHosts.GetV4vConnection(out connection, out serviceConnectionParams,
                                       io_debug, stop,
                                       log
                                       );

            // Use dbus interface to xenmgr.diag.
            Udbus.Serialization.DbusConnectionParameters dbusConnectionParameters = com.citrix.xenclient.xenmgr.diag.diagService.DefaultConnectionParameters;
            dbusConnectionParameters.Destination = "com.citrix.xenclient.xenmgr";
            com.citrix.xenclient.xenmgr.diag.diagService diag = com.citrix.xenclient.xenmgr.diag.diagService.Create(serviceConnectionParams, dbusConnectionParameters);

            return(diag);
        }
Exemplo n.º 4
0
 public UdbusMarshalException(int result, Udbus.Serialization.DbusConnectionParameters connectionParams, System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context)
     : this(info, context)
 {
     this.result = result;
     this.connectionParams = connectionParams;
 }
Exemplo n.º 5
0
 public UdbusMarshalException(int result, Udbus.Serialization.DbusConnectionParameters connectionParams, string message, Exception inner)
     : this(message, inner)
 {
     this.result = result;
     this.connectionParams = connectionParams;
 }
Exemplo n.º 6
0
 public UdbusMarshalException(int result, Udbus.Serialization.DbusConnectionParameters connectionParams)
     : this()
 {
     this.result = result;
     this.connectionParams = connectionParams;
 }
Exemplo n.º 7
0
 public UdbusMessageServiceException(Udbus.Serialization.DbusConnectionParameters connectionParams,
     Udbus.Serialization.NMessageStruct.UdbusMessageHandle msgStruct,
     System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context)
     : base(msgStruct, info, context)
 {
     this.connectionParams = connectionParams;
 }
Exemplo n.º 8
0
 public UdbusMessageServiceException(Udbus.Serialization.DbusConnectionParameters connectionParams,
     Udbus.Serialization.NMessageStruct.UdbusMessageHandle msgStruct, string message, Exception inner)
     : base(msgStruct, message, inner)
 {
     this.connectionParams = connectionParams;
 }
Exemplo n.º 9
0
 public MakeServiceHostWithDifferentDbusParams(Udbus.WCF.Service.Host.IMakeServiceHostCreationData target, Udbus.Serialization.DbusConnectionParameters dbusConnectionParams)
 {
     this.target = target;
     this.dbusConnectionParams = dbusConnectionParams;
 }
 public MakeServiceHostWithDifferentDbusParams(Udbus.WCF.Service.Host.IMakeServiceHostCreationData target, Udbus.Serialization.DbusConnectionParameters dbusConnectionParams)
 {
     this.target = target;
     this.dbusConnectionParams = dbusConnectionParams;
 }