Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / AddIn / AddIn / System / Addin / Pipeline / CollectionAdapters.cs / 1305376 / CollectionAdapters.cs
// ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== /*============================================================ ** ** Class: CollectionAdapters ** ** Purpose: Provides methods to convert from IListto IListContract ** and vice versa. ** ===========================================================*/ using System; using System.Collections.Generic; using System.AddIn.Contract; using System.AddIn; namespace System.AddIn.Pipeline { public static class CollectionAdapters { // Create a IListContract wrapper for an IList. This is typically done // by an addin adapter that wants to pass a list of objects to the host, // or vice versa. public static IListContract ToIListContract ( IList collection, Converter viewContractAdapter, Converter contractViewAdapter) { if (collection == null) return null; return new ListContractAdapter (collection, viewContractAdapter, contractViewAdapter); } public static IListContract ToIListContract (IList collection) { if (collection == null) return null; Converter c = new Converter (IdentityConverter ); return ToIListContract(collection, c, c); } // Create an IList that wraps a IContractList. The returned IList will // have a lifetimeToken for the remote IContractList. Its finalizer // will revoke the lifetimeToken. public static IList ToIList ( IListContract collection, Converter contractViewAdapter, Converter viewContractAdapter) { if (collection == null) return null; return new ContractListAdapter (collection, contractViewAdapter, viewContractAdapter); } public static IList ToIList (IListContract collection) { if (collection == null) return null; Converter c = new Converter (IdentityConverter ); return ToIList(collection, c, c); } private static T IdentityConverter (T item) { return item; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- Coordinator.cs
- LocalizableResourceBuilder.cs
- TypeToStringValueConverter.cs
- WithParamAction.cs
- HelloMessageApril2005.cs
- ElementFactory.cs
- Single.cs
- JournalEntryListConverter.cs
- NullableBoolConverter.cs
- DataRecordInternal.cs
- EmptyCollection.cs
- PageMediaSize.cs
- SpellerStatusTable.cs
- PerformanceCounterPermission.cs
- SourceSwitch.cs
- DataGridCommandEventArgs.cs
- MenuItem.cs
- WindowsStatusBar.cs
- DropShadowBitmapEffect.cs
- MULTI_QI.cs
- UnsafeNativeMethodsTablet.cs
- BasicExpandProvider.cs
- MultipleViewProviderWrapper.cs
- CompilerWrapper.cs
- GlyphRunDrawing.cs
- EdgeModeValidation.cs
- BulletDecorator.cs
- TableItemProviderWrapper.cs
- DrawTreeNodeEventArgs.cs
- MetadataHelper.cs
- InitializerFacet.cs
- AbandonedMutexException.cs
- WebPartDescription.cs
- XmlIncludeAttribute.cs
- HelpPage.cs
- DynamicResourceExtension.cs
- ObjectMemberMapping.cs
- ApplicationId.cs
- MessageQueuePermissionEntryCollection.cs
- AssociationSet.cs
- FormatException.cs
- AttributeTableBuilder.cs
- SafeHandles.cs
- TextRunProperties.cs
- ImageFormatConverter.cs
- OutputCacheProfile.cs
- ObjectConverter.cs
- Point3DValueSerializer.cs
- ValidatorCompatibilityHelper.cs
- ComponentSerializationService.cs
- ClientClassGenerator.cs
- EntityDataSourceSelectedEventArgs.cs
- LookupBindingPropertiesAttribute.cs
- MimeObjectFactory.cs
- TrackingStringDictionary.cs
- ObjectCacheHost.cs
- MsmqIntegrationBindingCollectionElement.cs
- Buffer.cs
- TableLayoutSettings.cs
- RootBuilder.cs
- GlobalItem.cs
- XamlSerializerUtil.cs
- SplitterCancelEvent.cs
- TextServicesHost.cs
- COM2EnumConverter.cs
- DriveNotFoundException.cs
- ServerValidateEventArgs.cs
- ObjectDataSourceDesigner.cs
- returneventsaver.cs
- AddingNewEventArgs.cs
- SimpleTextLine.cs
- PrivilegedConfigurationManager.cs
- DecimalAverageAggregationOperator.cs
- WebPartMenuStyle.cs
- ClientUrlResolverWrapper.cs
- XmlSchemaExternal.cs
- PathGeometry.cs
- PaginationProgressEventArgs.cs
- RelatedEnd.cs
- WindowProviderWrapper.cs
- TemplateAction.cs
- VisualTreeUtils.cs
- LocatorPart.cs
- streamingZipPartStream.cs
- BeginEvent.cs
- FrameSecurityDescriptor.cs
- ToolboxDataAttribute.cs
- XslCompiledTransform.cs
- SafeHandles.cs
- CurrentTimeZone.cs
- TransformGroup.cs
- SamlAttributeStatement.cs
- PaperSource.cs
- PackageRelationshipCollection.cs
- GlyphRun.cs
- PeerApplicationLaunchInfo.cs
- ScrollEvent.cs
- ListParaClient.cs
- ConstructorExpr.cs
- ConnectionOrientedTransportChannelFactory.cs