modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/content/ContentSourceManagerLocal.java
| 13 ++--
modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/plugin/pc/content/sync/PackageSourceSynchronizer.java
| 27 ++++++----
2 files changed, 24 insertions(+), 16 deletions(-)
New commits:
commit bacfd8264d21eff7b2d7b48be320204677ecc72c
Author: Jason Dobies <jason.dobies(a)redhat.com>
Date: Tue Nov 24 13:30:49 2009 -0500
Minor code cleanup.
diff --git
a/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/content/ContentSourceManagerLocal.java
b/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/content/ContentSourceManagerLocal.java
index df7c91e..c3eeb94 100644
---
a/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/content/ContentSourceManagerLocal.java
+++
b/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/content/ContentSourceManagerLocal.java
@@ -173,11 +173,11 @@ public interface ContentSourceManagerLocal {
/**
* Create the specified content source.
- *
+ *
* @param subject The user making the request.
- *
+ *
* @param contentSource A content source to be created.
- *
+ *
* @return The created content source.
*/
ContentSource createContentSource(Subject subject, ContentSource contentSource)
throws ContentSourceException;
@@ -264,7 +264,7 @@ public interface ContentSourceManagerLocal {
* @param resourceId
* @param packageDetailsKey
*
- * @return teh length of the package version
+ * @return the length of the package version
*/
long getPackageBitsLength(int resourceId, PackageDetailsKey packageDetailsKey);
@@ -284,7 +284,7 @@ public interface ContentSourceManagerLocal {
PageList<PackageVersionContentSource>
getPackageVersionsFromContentSources(Subject subject, int[] contentSourceIds,
PageControl pc);
-
+
/**
* Returns all the package versions that are served by the content source identified
by the given ID but whose
@@ -301,6 +301,7 @@ public interface ContentSourceManagerLocal {
int contentSourceId, PageControl pc);
+
/**
* This will download all the distribution bits associated with a specific content
source.
*
@@ -439,7 +440,7 @@ public interface ContentSourceManagerLocal {
ContentSourceSyncResults _mergeContentSourceSyncReportADD(ContentSource
contentSource,
DistributionSyncReport report, ContentSourceSyncResults syncResults,
StringBuilder progress);
-
+
/**
* Requests all {@link PackageVersion#getMetadata() metadata} for all package
versions that the given resource
* component is subscribed to (see {@link Repo#getResources()}. The returned object
has the metadata bytes that
diff --git
a/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/plugin/pc/content/sync/PackageSourceSynchronizer.java
b/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/plugin/pc/content/sync/PackageSourceSynchronizer.java
index b3e30e0..3d84178 100644
---
a/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/plugin/pc/content/sync/PackageSourceSynchronizer.java
+++
b/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/plugin/pc/content/sync/PackageSourceSynchronizer.java
@@ -131,6 +131,7 @@ public class PackageSourceSynchronizer {
public void synchronizePackageBits() throws Exception {
+ // Determine if the sync even needs to take place
if (!(provider instanceof PackageSource)) {
return;
}
@@ -147,21 +148,27 @@ public class PackageSourceSynchronizer {
return;
}
- long start = System.currentTimeMillis();
- List<PackageVersionContentSource> packageVersionContentSources;
+ long start;
- // make sure we only get back those that have not yet been loaded
- // TODO: consider paging here - do we have to load them all in at once or can we
do them in chunks?
+ // Determine which packages need bit synccing
+ /* If there become performance issues here, consider paging. So we have to load
them all
+ in at once or can we do them in chunks?
+ */
+ start = System.currentTimeMillis();
PageControl pc = PageControl.getUnlimitedInstance();
Subject overlord = subjectManager.getOverlord();
- packageVersionContentSources = contentSourceManager
- .getUnloadedPackageVersionsFromContentSource(overlord,
- source.getId(), pc);
- // For each unloaded package version, let's download them now.
- // This can potentially take a very long time.
- // We abort the entire download if we fail getting just one package.
+ // TODO: jdob - Need to change this call to only load packages for this repo
+ List<PackageVersionContentSource> packageVersionContentSources =
contentSourceManager
+ .getUnloadedPackageVersionsFromContentSource(overlord, source.getId(), pc);
+ log.info("Synchronize Package Bits: [" + source.getName() + "],
repo [" + repo.getName() +
+ "]: loaded package list for sync (" + (System.currentTimeMillis() -
start) + ")ms");
+
+ // Download the bits for each unloaded package version. Abort the entire download
if we
+ // fail getting just one package.
+
+ // Note: This can potentially take a very long time.
for (PackageVersionContentSource item : packageVersionContentSources) {
PackageVersionContentSourcePK pk = item.getPackageVersionContentSourcePK();
Show replies by date