code: public void install(InstallAsset installAsset, List<File> filesInstalled, Collection<String> featuresToBeInstalled, ExistsAction existsAction,
                          Set<String> executableFiles, Map<String, Set<String>> extattrFiles, boolean downloadDependencies,
                          RestRepositoryConnectionProxy proxy, ChecksumsManager checksumsManager) throws IOException, InstallException {
          if (installAsset.isFeature())
              ESAAdaptor.install(product, (ESAAsset) installAsset, filesInstalled, featuresToBeInstalled, existsAction, executableFiles, extattrFiles, checksumsManager);
          else if (installAsset.isFix())
              FixAdaptor.install(product, (FixAsset) installAsset);
          else if (installAsset.isServerPackage())
              if (installAsset instanceof JarAsset) {
                  ServerPackageJarAdaptor.install(product, (JarAsset) installAsset, filesInstalled, downloadDependencies, proxy);
              } else {
                  ServicePackageAdaptor.install(product, (ServerPackageAsset) installAsset, filesInstalled, existsAction);
              }
          else if (installAsset.isSample())
              ServerPackageJarAdaptor.install(product, (JarAsset) installAsset, filesInstalled, downloadDependencies, proxy);
          else if (installAsset.isOpenSource())
              ServerPackageJarAdaptor.install(product, (JarAsset) installAsset, filesInstalled, downloadDependencies, proxy);
      }
docs: Determines which install method to call based on the type of installAsset
  
  @param installAsset InstallAsset to install
  @param filesInstalled List of files to be installed
  @param featuresToBeInstalled Collection of feature names to install
  @param existsAction Action to take if asset exists
  @param executableFiles Set of executable file names
  @param extattrFiles Extendible attribute files as a set
  @param downloadDependencies If dependencies should be downloaded
  @param proxy RestRepositoryConnectionProxy to connect to
  @param checksumsManager ChecksumsManager for installed files
  @throws IOException
  @throws InstallException