2 * Copyright (c) 2013 Cisco Systems, Inc. and others. All rights reserved.
4 * This program and the accompanying materials are made available under the
5 * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6 * and is available at http://www.eclipse.org/legal/epl-v10.html
8 package org.opendaylight.controller.config.yang.store.impl;
10 import com.google.common.base.Optional;
11 import org.opendaylight.controller.config.yang.store.api.YangStoreService;
12 import org.osgi.framework.BundleActivator;
13 import org.osgi.framework.BundleContext;
14 import org.slf4j.Logger;
15 import org.slf4j.LoggerFactory;
17 import java.util.Dictionary;
18 import java.util.Hashtable;
19 import java.util.regex.Pattern;
21 public class YangStoreActivator implements BundleActivator {
22 private static final Logger logger = LoggerFactory.getLogger(YangStoreActivator.class);
25 public void start(BundleContext context) throws Exception {
27 Optional<Pattern> maybeBlacklistPattern = Optional.absent();
28 String blacklist = context.getProperty("yangstore.blacklist");
29 if (blacklist != null) {
31 maybeBlacklistPattern = Optional.of(Pattern.compile(blacklist));
32 } catch (RuntimeException e) {
33 logger.error("Cannot parse blacklist regex " + blacklist, e);
37 ExtenderYangTracker extenderYangTracker = new ExtenderYangTracker(maybeBlacklistPattern, context);
38 Dictionary<String, ?> properties = new Hashtable<>();
39 context.registerService(YangStoreService.class, extenderYangTracker, properties);
43 public void stop(BundleContext context) throws Exception {