1 /* 2 * Copyright (C) 2013 Google Inc. and others 3 * 4 * This program and the accompanying materials are made available under the 5 * terms of the Eclipse Distribution License v. 1.0 which is available at 6 * https://www.eclipse.org/org/documents/edl-v10.php. 7 * 8 * SPDX-License-Identifier: BSD-3-Clause 9 */ 10 package org.eclipse.jgit.archive; 11 12 import org.osgi.framework.BundleActivator; 13 import org.osgi.framework.BundleContext; 14 15 /** 16 * This activator registers all format types from the 17 * org.eclipse.jgit.archive package for use via the ArchiveCommand 18 * API. 19 * 20 * This registration happens automatically behind the scenes 21 * when the package is loaded as an OSGi bundle (and the corresponding 22 * deregistration happens when the bundle is unloaded, to avoid 23 * leaks). 24 */ 25 public class FormatActivator implements BundleActivator { 26 /** 27 * {@inheritDoc} 28 * 29 * Registers all included archive formats by calling 30 * {@link ArchiveFormats#registerAll()}. This method is called by the OSGi 31 * framework when the bundle is started. 32 */ 33 @Override start(BundleContext context)34 public void start(BundleContext context) { 35 ArchiveFormats.registerAll(); 36 } 37 38 /** 39 * {@inheritDoc} 40 * 41 * Cleans up after {@link #start(BundleContext)} by calling 42 * {@link ArchiveFormats#unregisterAll}. 43 */ 44 @Override stop(BundleContext context)45 public void stop(BundleContext context) { 46 ArchiveFormats.unregisterAll(); 47 } 48 } 49