Return-Path: X-Original-To: apmail-felix-commits-archive@www.apache.org Delivered-To: apmail-felix-commits-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id EECA9187A0 for ; Sat, 19 Dec 2015 18:02:40 +0000 (UTC) Received: (qmail 28758 invoked by uid 500); 19 Dec 2015 18:02:40 -0000 Delivered-To: apmail-felix-commits-archive@felix.apache.org Received: (qmail 28713 invoked by uid 500); 19 Dec 2015 18:02:40 -0000 Mailing-List: contact commits-help@felix.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@felix.apache.org Delivered-To: mailing list commits@felix.apache.org Received: (qmail 28704 invoked by uid 99); 19 Dec 2015 18:02:40 -0000 Received: from Unknown (HELO spamd2-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Sat, 19 Dec 2015 18:02:40 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd2-us-west.apache.org (ASF Mail Server at spamd2-us-west.apache.org) with ESMTP id 0FDA41A1497 for ; Sat, 19 Dec 2015 18:02:40 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd2-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: 0.446 X-Spam-Level: X-Spam-Status: No, score=0.446 tagged_above=-999 required=6.31 tests=[KAM_LAZY_DOMAIN_SECURITY=1, RP_MATCHES_RCVD=-0.554] autolearn=disabled Received: from mx1-eu-west.apache.org ([10.40.0.8]) by localhost (spamd2-us-west.apache.org [10.40.0.9]) (amavisd-new, port 10024) with ESMTP id wenlBdA7DVKI for ; Sat, 19 Dec 2015 18:02:38 +0000 (UTC) Received: from mailrelay1-us-west.apache.org (mailrelay1-us-west.apache.org [209.188.14.139]) by mx1-eu-west.apache.org (ASF Mail Server at mx1-eu-west.apache.org) with ESMTP id E7BC6203B9 for ; Sat, 19 Dec 2015 18:02:37 +0000 (UTC) Received: from svn01-us-west.apache.org (svn.apache.org [10.41.0.6]) by mailrelay1-us-west.apache.org (ASF Mail Server at mailrelay1-us-west.apache.org) with ESMTP id CABD2E0428 for ; Sat, 19 Dec 2015 18:02:36 +0000 (UTC) Received: from svn01-us-west.apache.org (localhost [127.0.0.1]) by svn01-us-west.apache.org (ASF Mail Server at svn01-us-west.apache.org) with ESMTP id 854963A023D for ; Sat, 19 Dec 2015 18:02:36 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r1720963 - /felix/trunk/dependencymanager/org.apache.felix.dependencymanager.itest/src/org/apache/felix/dm/itest/api/BundleAdapterWithCallbacksNotAutoConfiguredTest.java Date: Sat, 19 Dec 2015 18:02:36 -0000 To: commits@felix.apache.org From: pderop@apache.org X-Mailer: svnmailer-1.0.9 Message-Id: <20151219180236.854963A023D@svn01-us-west.apache.org> Author: pderop Date: Sat Dec 19 18:02:36 2015 New Revision: 1720963 URL: http://svn.apache.org/viewvc?rev=1720963&view=rev Log: FELIX-5147: added test for this issue. Added: felix/trunk/dependencymanager/org.apache.felix.dependencymanager.itest/src/org/apache/felix/dm/itest/api/BundleAdapterWithCallbacksNotAutoConfiguredTest.java Added: felix/trunk/dependencymanager/org.apache.felix.dependencymanager.itest/src/org/apache/felix/dm/itest/api/BundleAdapterWithCallbacksNotAutoConfiguredTest.java URL: http://svn.apache.org/viewvc/felix/trunk/dependencymanager/org.apache.felix.dependencymanager.itest/src/org/apache/felix/dm/itest/api/BundleAdapterWithCallbacksNotAutoConfiguredTest.java?rev=1720963&view=auto ============================================================================== --- felix/trunk/dependencymanager/org.apache.felix.dependencymanager.itest/src/org/apache/felix/dm/itest/api/BundleAdapterWithCallbacksNotAutoConfiguredTest.java (added) +++ felix/trunk/dependencymanager/org.apache.felix.dependencymanager.itest/src/org/apache/felix/dm/itest/api/BundleAdapterWithCallbacksNotAutoConfiguredTest.java Sat Dec 19 18:02:36 2015 @@ -0,0 +1,69 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ +package org.apache.felix.dm.itest.api; + +import org.junit.Assert; + +import org.apache.felix.dm.Component; +import org.apache.felix.dm.DependencyManager; +import org.apache.felix.dm.itest.util.Ensure; +import org.apache.felix.dm.itest.util.TestBase; +import org.osgi.framework.Bundle; + +/** + * @author Felix Project Team + */ +public class BundleAdapterWithCallbacksNotAutoConfiguredTest extends TestBase { + final Ensure m_e = new Ensure(); + + public void testBundleAdapterWithCallbacksNotAutoConfigured() { + DependencyManager m = getDM(); + // create a bundle adapter service (one is created for each bundle) + BundleAdapterWithCallback baWithCb = new BundleAdapterWithCallback(); + String bsn = "org.apache.felix.dependencymanager"; + String filter = "(Bundle-SymbolicName=" + bsn + ")"; + + Component adapter = m.createBundleAdapterService(Bundle.ACTIVE, filter, false, null, "add", null, null) + .setImplementation(baWithCb); + + // add the bundle adapter + m.add(adapter); + + // Check if adapter has not been auto configured (because it has callbacks defined). + m_e.waitForStep(1, 3000); + Assert.assertNull("bundle adapter must not be auto configured", baWithCb.getBundle()); + + // remove the bundle adapters + m.remove(adapter); + } + + class BundleAdapterWithCallback { + volatile Bundle m_bundle; // must not be auto configured because we are using callbacks. + + Bundle getBundle() { + return m_bundle; + } + + void add(Bundle b) { + Assert.assertNotNull(b); + Assert.assertEquals("org.apache.felix.dependencymanager", b.getSymbolicName()); + m_e.step(1); + } + } +}