From 42540eafde1485e5f2f5a7ac5fa9c541f46148ab Mon Sep 17 00:00:00 2001 From: Simon Kaegi Date: Mon, 7 Apr 2008 19:53:07 +0000 Subject: Adding null checks --- .../provisional/p2/directorywatcher/RepositoryListener.java | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to 'bundles/org.eclipse.equinox.p2.directorywatcher') diff --git a/bundles/org.eclipse.equinox.p2.directorywatcher/src/org/eclipse/equinox/internal/provisional/p2/directorywatcher/RepositoryListener.java b/bundles/org.eclipse.equinox.p2.directorywatcher/src/org/eclipse/equinox/internal/provisional/p2/directorywatcher/RepositoryListener.java index 2ffa581c0..ba5baf51c 100644 --- a/bundles/org.eclipse.equinox.p2.directorywatcher/src/org/eclipse/equinox/internal/provisional/p2/directorywatcher/RepositoryListener.java +++ b/bundles/org.eclipse.equinox.p2.directorywatcher/src/org/eclipse/equinox/internal/provisional/p2/directorywatcher/RepositoryListener.java @@ -270,7 +270,8 @@ public class RepositoryListener extends DirectoryChangeListener { if (!snapshot.isEmpty()) { IInstallableUnit[] iusToAdd = generateIUs(snapshot.keySet()); - metadataRepository.addInstallableUnits(iusToAdd); + if (iusToAdd.length != 0) + metadataRepository.addInstallableUnits(iusToAdd); } } @@ -309,6 +310,9 @@ public class RepositoryListener extends DirectoryChangeListener { protected IArtifactDescriptor generateArtifactDescriptor(File candidate) { IArtifactDescriptor basicDescriptor = generateBasicDescriptor(candidate); + if (basicDescriptor == null) + return null; + ArtifactDescriptor pathDescriptor = new ArtifactDescriptor(basicDescriptor); try { pathDescriptor.setRepositoryProperty(ARTIFACT_REFERENCE, candidate.toURL().toExternalForm()); @@ -331,11 +335,15 @@ public class RepositoryListener extends DirectoryChangeListener { if (isFeature(candidate)) { FeatureParser parser = new FeatureParser(); Feature feature = parser.parse(candidate); + if (feature == null) + return null; IArtifactKey featureKey = MetadataGeneratorHelper.createFeatureArtifactKey(feature.getId(), feature.getVersion()); return new ArtifactDescriptor(featureKey); } BundleDescription bundleDescription = bundleDescriptionFactory.getBundleDescription(candidate); + if (bundleDescription == null) + return null; IArtifactKey key = MetadataGeneratorHelper.createBundleArtifactKey(bundleDescription.getSymbolicName(), bundleDescription.getVersion().toString()); return MetadataGeneratorHelper.createArtifactDescriptor(key, candidate, true, false); } @@ -369,6 +377,8 @@ public class RepositoryListener extends DirectoryChangeListener { FeatureParser parser = new FeatureParser(); Feature feature = parser.parse(featureFile); + if (feature == null) + return null; IInstallableUnit featureIU = MetadataGeneratorHelper.createFeatureJarIU(feature, true, props); IInstallableUnit groupIU = MetadataGeneratorHelper.createGroupIU(feature, featureIU, props); -- cgit v1.2.3