Exemplo n.º 1
0
        internal TopicQosWrapper ToNative()
        {
            var data = new TopicQosWrapper
            {
                Durability        = Durability,
                DurabilityService = DurabilityService,
                Deadline          = Deadline,
                LatencyBudget     = LatencyBudget,
                Liveliness        = Liveliness,
                Reliability       = Reliability,
                DestinationOrder  = DestinationOrder,
                History           = History,
                ResourceLimits    = ResourceLimits,
                TransportPriority = TransportPriority,
                Lifespan          = Lifespan,
                Ownership         = Ownership,
            };

            if (TopicData != null)
            {
                data.TopicData = TopicData.ToNative();
            }

            return(data);
        }
Exemplo n.º 2
0
        internal PublicationBuiltinTopicDataWrapper ToNative()
        {
            if (toRelease == null)
            {
                toRelease = new List <IntPtr>();
            }

            var data = new PublicationBuiltinTopicDataWrapper
            {
                Deadline          = Deadline,
                DestinationOrder  = DestinationOrder,
                Durability        = Durability,
                DurabilityService = DurabilityService,
                Key               = Key,
                LatencyBudget     = LatencyBudget,
                Lifespan          = Lifespan,
                Liveliness        = Liveliness,
                Ownership         = Ownership,
                OwnershipStrength = OwnershipStrength,
                ParticipantKey    = ParticipantKey,
                Presentation      = Presentation,
                Reliability       = Reliability,
            };

            if (Partition != null)
            {
                data.Partition = Partition.ToNative();
            }

            if (GroupData != null)
            {
                data.GroupData = GroupData.ToNative();
            }

            if (TopicData != null)
            {
                data.TopicData = TopicData.ToNative();
            }

            if (UserData != null)
            {
                data.UserData = UserData.ToNative();
            }

            if (TopicName != null)
            {
                data.TopicName = Marshal.StringToHGlobalAnsi(TopicName);
                toRelease.Add(data.TopicName);
            }

            if (TypeName != null)
            {
                data.TypeName = Marshal.StringToHGlobalAnsi(TypeName);
                toRelease.Add(data.TypeName);
            }

            return(data);
        }