示例#1
0
        /// <summary>
        /// Validates the <paramref name="serializationInfo"/> instance.
        /// </summary>
        /// <param name="serializationInfo">The serialization info instance to validate.</param>
        /// <returns>The <paramref name="serializationInfo"/> instance.</returns>
        internal static ODataDeltaFeedSerializationInfo Validate(ODataDeltaFeedSerializationInfo serializationInfo)
        {
            if (serializationInfo != null)
            {
                ExceptionUtils.CheckArgumentNotNull(serializationInfo.EntitySetName, "serializationInfo.EntitySetName");
                ExceptionUtils.CheckArgumentNotNull(serializationInfo.EntityTypeName, "serializationInfo.EntityTypeName");
            }

            return(serializationInfo);
        }
        /// <summary>
        /// Validates the <paramref name="serializationInfo"/> instance.
        /// </summary>
        /// <param name="serializationInfo">The serialization info instance to validate.</param>
        /// <returns>The <paramref name="serializationInfo"/> instance.</returns>
        internal static ODataDeltaFeedSerializationInfo Validate(ODataDeltaFeedSerializationInfo serializationInfo)
        {
            if (serializationInfo != null)
            {
                ExceptionUtils.CheckArgumentNotNull(serializationInfo.EntitySetName, "serializationInfo.EntitySetName");
                ExceptionUtils.CheckArgumentNotNull(serializationInfo.EntityTypeName, "serializationInfo.EntityTypeName");
            }

            return serializationInfo;
        }
            /// <summary>
            /// Convert DeltaFeedSerializationInfo to DeltaSerializationInfo.
            /// </summary>
            /// <param name="serializationInfo">The DeltaFeedSerializationInfo to convert.</param>
            /// <returns>The converted DeltaSerializationInfo.</returns>
            internal static ODataDeltaSerializationInfo ToDeltaSerializationInfo(ODataDeltaFeedSerializationInfo serializationInfo)
            {
                if (serializationInfo == null)
                {
                    return null;
                }

                return new ODataDeltaSerializationInfo { NavigationSourceName = serializationInfo.EntitySetName };
            }
            /// <summary>
            /// Convert DeltaFeedSerializationInfo to FeedAndEntrySerializationInfo.
            /// </summary>
            /// <param name="serializationInfo">The DeltaFeedSerializationInfo to convert.</param>
            /// <returns>The converted FeedAndEntrySerializationInfo.</returns>
            internal static ODataFeedAndEntrySerializationInfo ToFeedAndEntrySerializationInfo(ODataDeltaFeedSerializationInfo serializationInfo)
            {
                if (serializationInfo == null)
                {
                    return null;
                }

                return new ODataFeedAndEntrySerializationInfo
                {
                    NavigationSourceName = serializationInfo.EntitySetName,
                    NavigationSourceKind = EdmNavigationSourceKind.EntitySet,
                    NavigationSourceEntityTypeName = serializationInfo.EntityTypeName,
                    ExpectedTypeName = serializationInfo.ExpectedTypeName
                };
            }
            /// <summary>
            /// Constructor to create a new feed scope.
            /// </summary>
            /// <param name="item">The feed for the new scope.</param>
            /// <param name="navigationSource">The navigation source we are going to write entities for.</param>
            /// <param name="entityType">The entity type for the entries in the feed to be written (or null if the entity set base type should be used).</param>
            /// <param name="selectedProperties">The selected properties of this scope.</param>
            /// <param name="odataUri">The ODataUri info of this scope.</param>
            protected DeltaFeedScope(ODataItem item, IEdmNavigationSource navigationSource, IEdmEntityType entityType, SelectedPropertiesNode selectedProperties, ODataUri odataUri)
                : base(WriterState.DeltaFeed, item, navigationSource, entityType, selectedProperties, odataUri)
            {
                Debug.Assert(item != null, "item != null");

                var feed = item as ODataDeltaFeed;
                Debug.Assert(feed != null, "feed must be DeltaFeed.");

                this.serializationInfo = feed.SerializationInfo;
            }
 /// <summary>
 /// Provide additional serialization information to the <see cref="ODataDeltaWriter"/> for <paramref name="deltaFeed"/>.
 /// </summary>
 /// <param name="deltaFeed">The instance to set the serialization info.</param>
 /// <param name="serializationInfo">The serialization info to set.</param>
 public static void SetSerializationInfo(this ODataDeltaFeed deltaFeed, ODataDeltaFeedSerializationInfo serializationInfo)
 {
     ExceptionUtils.CheckArgumentNotNull(deltaFeed, "deltaFeed");
     deltaFeed.SerializationInfo = serializationInfo;
 }