private static void addAndroidLibrary(@NotNull AndroidLibrary library,@NotNull DependencySet dependencies,@NotNull DependencyScope scope,@NotNull Set<File> unique,boolean supportsDependencyGraph){
  File folder=library.getFolder();
  if (unique.contains(folder)) {
    return;
  }
  unique.add(folder);
  ModuleDependency mainDependency=null;
  String gradleProjectPath=library.getProject();
  if (isNotEmpty(gradleProjectPath)) {
    mainDependency=addAndroidModule(library,gradleProjectPath,dependencies,scope,unique,supportsDependencyGraph);
  }
  if (mainDependency == null) {
    dependencies.add(createLibraryDependency(library,scope));
    addTransitiveDependencies(library,dependencies,scope,unique,supportsDependencyGraph);
  }
 else {
    LibraryDependency backup=createLibraryDependency(library,scope);
    mainDependency.setBackupDependency(backup);
  }
}

private static void addAndroidLibrary ( @ NotNull AndroidLibrary library , @ NotNull DependencySet dependencies , @ NotNull DependencyScope scope , @ NotNull Set < File > unique , boolean supportsDependencyGraph ) { File folder = library . getFolder ( ) ; if ( unique . contains ( folder ) ) { return ; } unique . add ( folder ) ; ModuleDependency mainDependency = null ; String gradleProjectPath = library . getProject ( ) ; if ( isNotEmpty ( gradleProjectPath ) ) { mainDependency = addAndroidModule ( library , gradleProjectPath , dependencies , scope , unique , supportsDependencyGraph ) ; } if ( mainDependency == null ) { dependencies . add ( createLibraryDependency ( library , scope ) ) ; addTransitiveDependencies ( library , dependencies , scope , unique , supportsDependencyGraph ) ; } else { LibraryDependency backup = createLibraryDependency ( library , scope ) ; mainDependency . setBackupDependency ( backup ) ; } }
add an android library , along with any recursive library dependencies
