:doc:`MigrationHubStrategyRecommendations <../../migrationhubstrategy>` / Paginator / ListApplicationComponents

*************************
ListApplicationComponents
*************************



.. py:class:: MigrationHubStrategyRecommendations.Paginator.ListApplicationComponents

  ::

    
    paginator = client.get_paginator('list_application_components')

  
  

  .. py:method:: paginate(**kwargs)

    Creates an iterator that will paginate through responses from :py:meth:`MigrationHubStrategyRecommendations.Client.list_application_components`.

    See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/migrationhubstrategy-2020-02-19/ListApplicationComponents>`_    


    **Request Syntax**
    ::

      response_iterator = paginator.paginate(
          applicationComponentCriteria='NOT_DEFINED'|'APP_NAME'|'SERVER_ID'|'APP_TYPE'|'STRATEGY'|'DESTINATION'|'ANALYSIS_STATUS'|'ERROR_CATEGORY',
          filterValue='string',
          groupIdFilter=[
              {
                  'name': 'ExternalId'|'ExternalSourceType',
                  'value': 'string'
              },
          ],
          sort='ASC'|'DESC',
          PaginationConfig={
              'MaxItems': 123,
              'PageSize': 123,
              'StartingToken': 'string'
          }
      )
      
    :type applicationComponentCriteria: string
    :param applicationComponentCriteria: 

      Criteria for filtering the list of application components.

      

    
    :type filterValue: string
    :param filterValue: 

      Specify the value based on the application component criteria type. For example, if ``applicationComponentCriteria`` is set to ``SERVER_ID`` and ``filterValue`` is set to ``server1``, then  ListApplicationComponents returns all the application components running on server1.

      

    
    :type groupIdFilter: list
    :param groupIdFilter: 

      The group ID specified in to filter on.

      

    
      - *(dict) --* 

        The object containing information about distinct imports or groups for Strategy Recommendations.

        

      
        - **name** *(string) --* 

          The key of the specific import group.

          

        
        - **value** *(string) --* 

          The value of the specific import group.

          

        
      
  
    :type sort: string
    :param sort: 

      Specifies whether to sort by ascending ( ``ASC``) or descending ( ``DESC``) order.

      

    
    :type PaginationConfig: dict
    :param PaginationConfig: 

      A dictionary that provides parameters to control pagination.

      

    
      - **MaxItems** *(integer) --* 

        The total number of items to return. If the total number of items available is more than the value specified in max-items then a ``NextToken`` will be provided in the output that you can use to resume pagination.

        

      
      - **PageSize** *(integer) --* 

        The size of each page.

        

      
      - **StartingToken** *(string) --* 

        A token to specify where to start paginating. This is the ``NextToken`` from a previous response.

        

      
    
    
    :rtype: dict
    :returns: 
      
      **Response Syntax**

      
      ::

        {
            'applicationComponentInfos': [
                {
                    'analysisStatus': 'ANALYSIS_TO_BE_SCHEDULED'|'ANALYSIS_STARTED'|'ANALYSIS_SUCCESS'|'ANALYSIS_FAILED'|'ANALYSIS_PARTIAL_SUCCESS'|'UNCONFIGURED'|'CONFIGURED',
                    'antipatternReportS3Object': {
                        's3Bucket': 'string',
                        's3key': 'string'
                    },
                    'antipatternReportStatus': 'FAILED'|'IN_PROGRESS'|'SUCCESS',
                    'antipatternReportStatusMessage': 'string',
                    'appType': 'DotNetFramework'|'Java'|'SQLServer'|'IIS'|'Oracle'|'Other'|'Tomcat'|'JBoss'|'Spring'|'Mongo DB'|'DB2'|'Maria DB'|'MySQL'|'Sybase'|'PostgreSQLServer'|'Cassandra'|'IBM WebSphere'|'Oracle WebLogic'|'Visual Basic'|'Unknown'|'DotnetCore'|'Dotnet',
                    'appUnitError': {
                        'appUnitErrorCategory': 'CREDENTIAL_ERROR'|'CONNECTIVITY_ERROR'|'PERMISSION_ERROR'|'UNSUPPORTED_ERROR'|'OTHER_ERROR'
                    },
                    'associatedServerId': 'string',
                    'databaseConfigDetail': {
                        'secretName': 'string'
                    },
                    'id': 'string',
                    'inclusionStatus': 'excludeFromAssessment'|'includeInAssessment',
                    'lastAnalyzedTimestamp': datetime(2015, 1, 1),
                    'listAntipatternSeveritySummary': [
                        {
                            'count': 123,
                            'severity': 'HIGH'|'MEDIUM'|'LOW'
                        },
                    ],
                    'moreServerAssociationExists': True|False,
                    'name': 'string',
                    'osDriver': 'string',
                    'osVersion': 'string',
                    'recommendationSet': {
                        'strategy': 'Rehost'|'Retirement'|'Refactor'|'Replatform'|'Retain'|'Relocate'|'Repurchase',
                        'targetDestination': 'None specified'|'AWS Elastic BeanStalk'|'AWS Fargate'|'Amazon Elastic Cloud Compute (EC2)'|'Amazon Elastic Container Service (ECS)'|'Amazon Elastic Kubernetes Service (EKS)'|'Aurora MySQL'|'Aurora PostgreSQL'|'Amazon Relational Database Service on MySQL'|'Amazon Relational Database Service on PostgreSQL'|'Amazon DocumentDB'|'Amazon DynamoDB'|'Amazon Relational Database Service'|'Babelfish for Aurora PostgreSQL',
                        'transformationTool': {
                            'description': 'string',
                            'name': 'App2Container'|'Porting Assistant For .NET'|'End of Support Migration'|'Windows Web Application Migration Assistant'|'Application Migration Service'|'Strategy Recommendation Support'|'In Place Operating System Upgrade'|'Schema Conversion Tool'|'Database Migration Service'|'Native SQL Server Backup/Restore',
                            'tranformationToolInstallationLink': 'string'
                        }
                    },
                    'resourceSubType': 'Database'|'Process'|'DatabaseProcess',
                    'resultList': [
                        {
                            'analysisStatus': {
                                'runtimeAnalysisStatus': 'ANALYSIS_TO_BE_SCHEDULED'|'ANALYSIS_STARTED'|'ANALYSIS_SUCCESS'|'ANALYSIS_FAILED',
                                'srcCodeOrDbAnalysisStatus': 'ANALYSIS_TO_BE_SCHEDULED'|'ANALYSIS_STARTED'|'ANALYSIS_SUCCESS'|'ANALYSIS_FAILED'|'ANALYSIS_PARTIAL_SUCCESS'|'UNCONFIGURED'|'CONFIGURED'
                            },
                            'analysisType': 'SOURCE_CODE_ANALYSIS'|'DATABASE_ANALYSIS'|'RUNTIME_ANALYSIS'|'BINARY_ANALYSIS',
                            'antipatternReportResultList': [
                                {
                                    'analyzerName': {
                                        'binaryAnalyzerName': 'DLL_ANALYZER'|'BYTECODE_ANALYZER',
                                        'runTimeAnalyzerName': 'A2C_ANALYZER'|'REHOST_ANALYZER'|'EMP_PA_ANALYZER'|'DATABASE_ANALYZER'|'SCT_ANALYZER',
                                        'sourceCodeAnalyzerName': 'CSHARP_ANALYZER'|'JAVA_ANALYZER'|'BYTECODE_ANALYZER'|'PORTING_ASSISTANT'
                                    },
                                    'antiPatternReportS3Object': {
                                        's3Bucket': 'string',
                                        's3key': 'string'
                                    },
                                    'antipatternReportStatus': 'FAILED'|'IN_PROGRESS'|'SUCCESS',
                                    'antipatternReportStatusMessage': 'string'
                                },
                            ],
                            'statusMessage': 'string'
                        },
                    ],
                    'runtimeStatus': 'ANALYSIS_TO_BE_SCHEDULED'|'ANALYSIS_STARTED'|'ANALYSIS_SUCCESS'|'ANALYSIS_FAILED',
                    'runtimeStatusMessage': 'string',
                    'sourceCodeRepositories': [
                        {
                            'branch': 'string',
                            'projectName': 'string',
                            'repository': 'string',
                            'versionControlType': 'string'
                        },
                    ],
                    'statusMessage': 'string'
                },
            ],
            'NextToken': 'string'
        }
        
      **Response Structure**

      

      - *(dict) --* 
        

        - **applicationComponentInfos** *(list) --* 

          The list of application components with detailed information about each component.

          
          

          - *(dict) --* 

            Contains detailed information about an application component.

            
            

            - **analysisStatus** *(string) --* 

              The status of analysis, if the application component has source code or an associated database.

              
            

            - **antipatternReportS3Object** *(dict) --* 

              The S3 bucket name and the Amazon S3 key name for the anti-pattern report.

              
              

              - **s3Bucket** *(string) --* 

                The S3 bucket name.

                
              

              - **s3key** *(string) --* 

                The Amazon S3 key name.

                
          
            

            - **antipatternReportStatus** *(string) --* 

              The status of the anti-pattern report generation.

              
            

            - **antipatternReportStatusMessage** *(string) --* 

              The status message for the anti-pattern.

              
            

            - **appType** *(string) --* 

              The type of application component.

              
            

            - **appUnitError** *(dict) --* 

              The error in the analysis of the source code or database.

              
              

              - **appUnitErrorCategory** *(string) --* 

                The category of the error.

                
          
            

            - **associatedServerId** *(string) --* 

              The ID of the server that the application component is running on.

              
            

            - **databaseConfigDetail** *(dict) --* 

              Configuration details for the database associated with the application component.

              
              

              - **secretName** *(string) --* 

                AWS Secrets Manager key that holds the credentials that you use to connect to a database.

                
          
            

            - **id** *(string) --* 

              The ID of the application component.

              
            

            - **inclusionStatus** *(string) --* 

              Indicates whether the application component has been included for server recommendation or not.

              
            

            - **lastAnalyzedTimestamp** *(datetime) --* 

              The timestamp of when the application component was assessed.

              
            

            - **listAntipatternSeveritySummary** *(list) --* 

              A list of anti-pattern severity summaries.

              
              

              - *(dict) --* 

                Contains the summary of anti-patterns and their severity.

                
                

                - **count** *(integer) --* 

                  Contains the count of anti-patterns.

                  
                

                - **severity** *(string) --* 

                  Contains the severity of anti-patterns.

                  
            
          
            

            - **moreServerAssociationExists** *(boolean) --* 

              Set to true if the application component is running on multiple servers.

              
            

            - **name** *(string) --* 

              The name of application component.

              
            

            - **osDriver** *(string) --* 

              OS driver.

              
            

            - **osVersion** *(string) --* 

              OS version.

              
            

            - **recommendationSet** *(dict) --* 

              The top recommendation set for the application component.

              
              

              - **strategy** *(string) --* 

                The recommended strategy.

                
              

              - **targetDestination** *(string) --* 

                The recommended target destination.

                
              

              - **transformationTool** *(dict) --* 

                The target destination for the recommendation set.

                
                

                - **description** *(string) --* 

                  Description of the tool.

                  
                

                - **name** *(string) --* 

                  Name of the tool.

                  
                

                - **tranformationToolInstallationLink** *(string) --* 

                  URL for installing the tool.

                  
            
          
            

            - **resourceSubType** *(string) --* 

              The application component subtype.

              
            

            - **resultList** *(list) --* 

              A list of the analysis results.

              
              

              - *(dict) --* 

                The error in server analysis.

                
                

                - **analysisStatus** *(dict) --* 

                  The error in server analysis.

                  .. note::    This is a Tagged Union structure. Only one of the     following top level keys will be set: ``runtimeAnalysisStatus``, ``srcCodeOrDbAnalysisStatus``.     If a client receives an unknown member it will     set ``SDK_UNKNOWN_MEMBER`` as the top level key,     which maps to the name or tag of the unknown     member. The structure of ``SDK_UNKNOWN_MEMBER`` is     as follows::

                                    'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}


                
                  

                  - **runtimeAnalysisStatus** *(string) --* 

                    The status of the analysis.

                    
                  

                  - **srcCodeOrDbAnalysisStatus** *(string) --* 

                    The status of the source code or database analysis.

                    
              
                

                - **analysisType** *(string) --* 

                  The error in server analysis.

                  
                

                - **antipatternReportResultList** *(list) --* 

                  The error in server analysis.

                  
                  

                  - *(dict) --* 

                    The anti-pattern report result.

                    
                    

                    - **analyzerName** *(dict) --* 

                      The analyzer name.

                      .. note::    This is a Tagged Union structure. Only one of the     following top level keys will be set: ``binaryAnalyzerName``, ``runTimeAnalyzerName``, ``sourceCodeAnalyzerName``.     If a client receives an unknown member it will     set ``SDK_UNKNOWN_MEMBER`` as the top level key,     which maps to the name or tag of the unknown     member. The structure of ``SDK_UNKNOWN_MEMBER`` is     as follows::

                                            'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}


                    
                      

                      - **binaryAnalyzerName** *(string) --* 

                        The binary analyzer names.

                        
                      

                      - **runTimeAnalyzerName** *(string) --* 

                        The assessment analyzer names.

                        
                      

                      - **sourceCodeAnalyzerName** *(string) --* 

                        The source code analyzer names.

                        
                  
                    

                    - **antiPatternReportS3Object** *(dict) --* 

                      Contains the S3 bucket name and the Amazon S3 key name.

                      
                      

                      - **s3Bucket** *(string) --* 

                        The S3 bucket name.

                        
                      

                      - **s3key** *(string) --* 

                        The Amazon S3 key name.

                        
                  
                    

                    - **antipatternReportStatus** *(string) --* 

                      The status of the anti-pattern report generation.

                      
                    

                    - **antipatternReportStatusMessage** *(string) --* 

                      The status message for the anti-pattern.

                      
                
              
                

                - **statusMessage** *(string) --* 

                  The error in server analysis.

                  
            
          
            

            - **runtimeStatus** *(string) --* 

              The status of the application unit.

              
            

            - **runtimeStatusMessage** *(string) --* 

              The status message for the application unit.

              
            

            - **sourceCodeRepositories** *(list) --* 

              Details about the source code repository associated with the application component.

              
              

              - *(dict) --* 

                Object containing source code information that is linked to an application component.

                
                

                - **branch** *(string) --* 

                  The branch of the source code.

                  
                

                - **projectName** *(string) --* 

                  The name of the project.

                  
                

                - **repository** *(string) --* 

                  The repository name for the source code.

                  
                

                - **versionControlType** *(string) --* 

                  The type of repository to use for the source code.

                  
            
          
            

            - **statusMessage** *(string) --* 

              A detailed description of the analysis status and any failure message.

              
        
      
        

        - **NextToken** *(string) --* 

          A token to resume pagination.

          
    