1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.springframework.osgi.extender.event;
17
18 import java.util.ArrayList;
19 import java.util.Collection;
20 import java.util.Collections;
21 import java.util.List;
22
23 import org.osgi.framework.Bundle;
24 import org.osgi.framework.Filter;
25 import org.springframework.context.ApplicationContext;
26 import org.springframework.osgi.context.event.OsgiBundleContextFailedEvent;
27 import org.springframework.osgi.service.importer.event.OsgiServiceDependencyEvent;
28
29
30
31
32
33
34 public class BootstrappingDependenciesFailedEvent extends OsgiBundleContextFailedEvent {
35
36 private final Collection<OsgiServiceDependencyEvent> dependencyEvents;
37 private final Collection<String> dependencyFilters;
38 private final Filter dependenciesFilter;
39
40 public BootstrappingDependenciesFailedEvent(ApplicationContext source, Bundle bundle, Throwable th,
41 Collection<OsgiServiceDependencyEvent> nestedEvents, Filter filter) {
42 super(source, bundle, th);
43
44 this.dependencyEvents = nestedEvents;
45 this.dependenciesFilter = filter;
46
47 List<String> depFilters = new ArrayList<String>(dependencyEvents.size());
48
49 for (OsgiServiceDependencyEvent dependency : nestedEvents) {
50 depFilters.add(dependency.getServiceDependency().getServiceFilter().toString());
51 }
52
53 dependencyFilters = Collections.unmodifiableCollection(depFilters);
54 }
55
56
57
58
59
60
61 public Collection<OsgiServiceDependencyEvent> getDependencyEvents() {
62 return dependencyEvents;
63 }
64
65 public Filter getDependenciesAsFilter() {
66 return dependenciesFilter;
67 }
68
69 public Collection<String> getDependencyFilters() {
70 return dependencyFilters;
71 }
72 }