Beispiel #1
0
 /// <summary>
 /// Creates a connector mapping or updates an existing connector mapping in the
 /// connector.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='resourceGroupName'>
 /// The name of the resource group.
 /// </param>
 /// <param name='hubName'>
 /// The name of the hub.
 /// </param>
 /// <param name='connectorName'>
 /// The name of the connector.
 /// </param>
 /// <param name='mappingName'>
 /// The name of the connector mapping.
 /// </param>
 /// <param name='parameters'>
 /// Parameters supplied to the CreateOrUpdate Connector Mapping operation.
 /// </param>
 public static ConnectorMappingResourceFormat CreateOrUpdate(this IConnectorMappingsOperations operations, string resourceGroupName, string hubName, string connectorName, string mappingName, ConnectorMappingResourceFormat parameters)
 {
     return(operations.CreateOrUpdateAsync(resourceGroupName, hubName, connectorName, mappingName, parameters).GetAwaiter().GetResult());
 }
Beispiel #2
0
 /// <summary>
 /// Creates a connector mapping or updates an existing connector mapping in the
 /// connector.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='resourceGroupName'>
 /// The name of the resource group.
 /// </param>
 /// <param name='hubName'>
 /// The name of the hub.
 /// </param>
 /// <param name='connectorName'>
 /// The name of the connector.
 /// </param>
 /// <param name='mappingName'>
 /// The name of the connector mapping.
 /// </param>
 /// <param name='parameters'>
 /// Parameters supplied to the CreateOrUpdate Connector Mapping operation.
 /// </param>
 /// <param name='cancellationToken'>
 /// The cancellation token.
 /// </param>
 public static async Task <ConnectorMappingResourceFormat> CreateOrUpdateAsync(this IConnectorMappingsOperations operations, string resourceGroupName, string hubName, string connectorName, string mappingName, ConnectorMappingResourceFormat parameters, CancellationToken cancellationToken = default(CancellationToken))
 {
     using (var _result = await operations.CreateOrUpdateWithHttpMessagesAsync(resourceGroupName, hubName, connectorName, mappingName, parameters, null, cancellationToken).ConfigureAwait(false))
     {
         return(_result.Body);
     }
 }
        public void CrdConnectorMappingFullCycle()
        {
            using (var context = MockContext.Start(this.GetType()))
            {
                var aciClient = context.GetServiceClient <CustomerInsightsManagementClient>();

                var interactionName           = TestUtilities.GenerateName("TestInteractionType");
                var interactionResourceFormat = Helpers.GetTestInteraction(interactionName, "profile1");

                var connectorName           = TestUtilities.GenerateName("testConnector");
                var connectorResourceFormat = Helpers.GetTestConnector(connectorName, "Test connector");

                var connectorMappingName           = TestUtilities.GenerateName("testMapping");
                var connectorMappingResourceFormat = new ConnectorMappingResourceFormat
                {
                    EntityType        = EntityTypes.Interaction,
                    EntityTypeName    = interactionName,
                    DisplayName       = connectorMappingName,
                    Description       = "Test mapping",
                    MappingProperties =
                        new ConnectorMappingProperties
                    {
                        FolderPath      = "http://sample.dne/file",
                        FileFilter      = "unknown",
                        HasHeader       = false,
                        ErrorManagement =
                            new ConnectorMappingErrorManagement
                        {
                            ErrorManagementType =
                                ErrorManagementTypes.StopImport,
                            ErrorLimit = 10
                        },
                        Format =
                            new ConnectorMappingFormat
                        {
                            ColumnDelimiter = "|"
                        },
                        Availability =
                            new ConnectorMappingAvailability
                        {
                            Frequency = FrequencyTypes.Hour,
                            Interval  = 5
                        },
                        Structure =
                            new[]
                        {
                            new ConnectorMappingStructure
                            {
                                PropertyName = "unknwon1",
                                ColumnName   = "unknown1",
                                IsEncrypted  = false
                            },
                            new ConnectorMappingStructure
                            {
                                PropertyName = "unknwon2",
                                ColumnName   = "unknown2",
                                IsEncrypted  = true
                            }
                        },
                        CompleteOperation =
                            new ConnectorMappingCompleteOperation
                        {
                            CompletionOperationType =
                                CompletionOperationTypes.DeleteFile,
                            DestinationFolder = "fakePath"
                        }
                    }
                };

                aciClient.Interactions.CreateOrUpdate(
                    ResourceGroupName,
                    HubName,
                    interactionName,
                    interactionResourceFormat);
                aciClient.Connectors.CreateOrUpdate(ResourceGroupName, HubName, connectorName, connectorResourceFormat);

                var createdMapping = aciClient.ConnectorMappings.CreateOrUpdate(
                    ResourceGroupName,
                    HubName,
                    connectorName,
                    connectorMappingName,
                    connectorMappingResourceFormat);
                Assert.Equal(connectorMappingName, createdMapping.ConnectorMappingName);
                Assert.Equal(
                    createdMapping.Name,
                    HubName + "/" + connectorName + "/" + connectorMappingName,
                    StringComparer.OrdinalIgnoreCase);
                Assert.Equal(
                    "Microsoft.CustomerInsights/hubs/connectors/mappings",
                    createdMapping.Type, StringComparer.OrdinalIgnoreCase);

                var getMapping = aciClient.ConnectorMappings.Get(
                    ResourceGroupName,
                    HubName,
                    connectorName,
                    connectorMappingName);

                Assert.Equal(connectorMappingName, getMapping.ConnectorMappingName);
                Assert.Equal(
                    getMapping.Name,
                    HubName + "/" + connectorName + "/" + connectorMappingName,
                    StringComparer.OrdinalIgnoreCase);
                Assert.Equal(
                    "Microsoft.CustomerInsights/hubs/connectors/mappings",
                    getMapping.Type, StringComparer.OrdinalIgnoreCase);

                var result = aciClient.ConnectorMappings.ListByConnector(ResourceGroupName, HubName, connectorName);
                Assert.True(result.ToList().Count >= 1);
                Assert.Contains(result.ToList(), mappingReturned => connectorMappingName == mappingReturned.ConnectorMappingName);

                var deleteMappingResponse =
                    aciClient.ConnectorMappings.DeleteWithHttpMessagesAsync(
                        ResourceGroupName,
                        HubName,
                        connectorName,
                        connectorMappingName).Result;
                Assert.Equal(HttpStatusCode.OK, deleteMappingResponse.Response.StatusCode);
            }
        }