Subversion Repositories DevTools

Rev

Rev 7128 | Rev 7133 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 7128 Rev 7129
Line 1115... Line 1115...
1115
                //  Report packages that are indirectly excluded
1115
                //  Report packages that are indirectly excluded
1116
                //  ie: They will not be built because one, or more, of there dependents is not buildable
1116
                //  ie: They will not be built because one, or more, of there dependents is not buildable
1117
                //
1117
                //
1118
                mLogger.debug("planBuildOrder process packages which are not ripple buildable");
1118
                mLogger.debug("planBuildOrder process packages which are not ripple buildable");
1119
 
1119
 
-
 
1120
                Package.resetCircularDependency (mPackageCollection);
1120
                 for (ListIterator<BuildExclusion> it = mBuildExclusionCollection.listIterator(); it.hasNext(); )
1121
                 for (ListIterator<BuildExclusion> it = mBuildExclusionCollection.listIterator(); it.hasNext(); )
1121
                 {
1122
                 {
1122
                     BuildExclusion be = it.next();
1123
                     BuildExclusion be = it.next();
1123
 
1124
 
1124
                     for (Iterator<Package> it1 = mPackageCollection.iterator(); it1.hasNext(); )
1125
                     for (Iterator<Package> it1 = mPackageCollection.iterator(); it1.hasNext(); )
Line 1141... Line 1142...
1141
                             //  Process packages that we need to exclude indirectly
1142
                             //  Process packages that we need to exclude indirectly
1142
                             //
1143
                             //
1143
                             while ( ! toExclude.isEmpty())
1144
                             while ( ! toExclude.isEmpty())
1144
                             {
1145
                             {
1145
                                 Package pkg = toExclude.remove(0);
1146
                                 Package pkg = toExclude.remove(0);
1146
                                 toExclude.addAll(usedByAnyPackages(pkg, mPackageCollection ));
-
 
1147
                                 
1147
                                 
1148
                                 // If this package has not been excluded (for whatever reason), than add it
1148
                                 // If this package has not been excluded (for whatever reason), than add it
1149
                                 boolean found = false;
1149
                                 boolean found = false;
1150
                                 for (Iterator<BuildExclusion> it2 = mBuildExclusionCollection.iterator(); it2.hasNext(); )
1150
                                 for (Iterator<BuildExclusion> it2 = mBuildExclusionCollection.iterator(); it2.hasNext(); )
1151
                                 {
1151
                                 {
Line 1171... Line 1171...
1171
                                 {
1171
                                 {
1172
                                     BuildExclusion buildExclusion = new BuildExclusion(pkg.mId, p.mId, null, p.mTestBuildInstruction);
1172
                                     BuildExclusion buildExclusion = new BuildExclusion(pkg.mId, p.mId, null, p.mTestBuildInstruction);
1173
                                     it.add(buildExclusion);
1173
                                     it.add(buildExclusion);
1174
                                     mLogger.info("Indirectly Excluded Package {}", pkg.mAlias);
1174
                                     mLogger.info("Indirectly Excluded Package {}", pkg.mAlias);
1175
                                     pkg.mBuildFile = -5; 
1175
                                     pkg.mBuildFile = -5; 
1176
 
-
 
1177
                                     ArrayList<Package> usedBy = usedByAnyPackages(pkg, mPackageCollectionAll );
-
 
1178
                                     toExclude.addAll(usedBy);
-
 
1179
                                 }
1176
                                 }
-
 
1177
                                 
-
 
1178
                                 // Determine all packages that use this excluded package
-
 
1179
                                 // THAT WE HAVE NOT ALREADY PROCESSED - circular dependencies are a killer
-
 
1180
                                 ArrayList<Package> usedBy = usedByAnyPackages(pkg, mPackageCollectionAll );
-
 
1181
                                 for (Iterator<Package> it2 = usedBy.iterator(); it2.hasNext(); )
-
 
1182
                                 {
-
 
1183
                                     Package uPkg = it2.next();
-
 
1184
                                     if (!uPkg.mCheckedCircularDependency)
-
 
1185
                                     {
-
 
1186
                                         toExclude.add(uPkg);
-
 
1187
                                         uPkg.mCheckedCircularDependency = true;
-
 
1188
                                     }
-
 
1189
                                 }
-
 
1190
 
1180
                             }
1191
                             }
1181
                         }
1192
                         }
1182
                     }
1193
                     }
1183
                 }
1194
                 }
1184
                 
1195