blob: f869a3c60030d20373d38a4eb7b09f7f6f0716f9 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
package org.openecomp.mso.yangDecoder.base;
import org.opendaylight.mdsal.dom.api.DOMSchemaService;
import org.opendaylight.yangtools.concepts.ListenerRegistration;
import org.opendaylight.yangtools.util.ListenerRegistry;
import org.opendaylight.yangtools.yang.model.api.SchemaContext;
import org.opendaylight.yangtools.yang.model.api.SchemaContextListener;
import org.opendaylight.yangtools.yang.model.api.SchemaContextProvider;
public final class MockSchemaService implements DOMSchemaService, SchemaContextProvider {
private SchemaContext schemaContext;
ListenerRegistry<SchemaContextListener> listeners = ListenerRegistry.create();
@Override
public synchronized SchemaContext getGlobalContext() {
return schemaContext;
}
@Override
public synchronized SchemaContext getSessionContext() {
return schemaContext;
}
@Override
public ListenerRegistration<SchemaContextListener> registerSchemaContextListener(
final SchemaContextListener listener) {
return listeners.register(listener);
}
@Override
public synchronized SchemaContext getSchemaContext() {
return schemaContext;
}
public synchronized void changeSchema(final SchemaContext newContext) {
schemaContext = newContext;
for (ListenerRegistration<SchemaContextListener> listener : listeners) {
listener.getInstance().onGlobalContextUpdated(schemaContext);
}
}
}
|