Return-Path: X-Original-To: apmail-ace-users-archive@minotaur.apache.org Delivered-To: apmail-ace-users-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id EC5E3DE6C for ; Fri, 10 Aug 2012 10:27:06 +0000 (UTC) Received: (qmail 40455 invoked by uid 500); 10 Aug 2012 10:27:06 -0000 Delivered-To: apmail-ace-users-archive@ace.apache.org Received: (qmail 40373 invoked by uid 500); 10 Aug 2012 10:27:04 -0000 Mailing-List: contact users-help@ace.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: users@ace.apache.org Delivered-To: mailing list users@ace.apache.org Received: (qmail 40329 invoked by uid 99); 10 Aug 2012 10:27:02 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 10 Aug 2012 10:27:02 +0000 X-ASF-Spam-Status: No, hits=1.0 required=5.0 tests=RCVD_IN_DNSWL_NONE,SPF_SOFTFAIL X-Spam-Check-By: apache.org Received-SPF: softfail (nike.apache.org: transitioning domain of marcel.offermans@luminis.nl does not designate 194.109.24.28 as permitted sender) Received: from [194.109.24.28] (HELO smtp-vbr8.xs4all.nl) (194.109.24.28) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 10 Aug 2012 10:26:54 +0000 Received: from macpro.fritz.box (planetmarrs.xs4all.nl [82.95.193.148]) (authenticated bits=0) by smtp-vbr8.xs4all.nl (8.13.8/8.13.8) with ESMTP id q7AAQWQC068809 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=NO) for ; Fri, 10 Aug 2012 12:26:33 +0200 (CEST) (envelope-from marcel.offermans@luminis.nl) Content-Type: text/plain; charset=iso-8859-1 Mime-Version: 1.0 (Apple Message framework v1278) Subject: Re: Licensing model From: Marcel Offermans In-Reply-To: Date: Fri, 10 Aug 2012 12:26:32 +0200 Content-Transfer-Encoding: quoted-printable Message-Id: <269300C9-831B-4E1B-9241-69374FD4DB9E@luminis.nl> References: To: X-Mailer: Apple Mail (2.1278) X-Virus-Scanned: by XS4ALL Virus Scanner Hello Mickael, Sorry for not getting back to you sooner. On Jul 24, 2012, at 13:50 , Mickael Marrache wrote: > Company A wants to sell an application server to companies B and C. = The > application server consists of multiple bundles. For each company, = many > application servers may be installed on different nodes. So, on each = node, > I think there would be one Apache Felix instance and the bundles that > compose the application server installed on it. Yes. ACE can manage an OSGi framework if you install the "management = agent" bundle in this framework (this is called a "target" in ACE). You = can either do that with a startup script, or we have a version of Felix = that "embeds" this management agent. > But, for each application server installation, some bundles are = provided > following a license. For example, company B may have bought a license = to > use a certain bundle of the application server, that provides a = particular > service. Company C may have bought a more expensive license, therefore > using the same bundle as B plus another bundle that provides another > service. Using the features and distributions of ACE, you can group certain = bundles and configuration files together to form such licenses. You can = then associate a distribution (or more of them) with a target (=3D an = OSGi framework with management agent). So for this example, you might have one "base" distribution with the = plain application server, and some "extra" distributions with the = licensed add-ons. > So, I need a way to differentiate the nodes (i.e. a node belongs to a > particular customer). I also need a way to control which bundles are > installed/used on a certain node following certain license = information. Targets (nodes) can be tagged with custom tags. It would therefore be = easy to add a "customer=3DFoo" to a target to associate it with a = customer. You can then create a custom "association" between a = distribution and "any target that has the customer=3DFoo tag". > Is it possible using Apache Ace? If yes, is it enough mature to be = used in > production? We are using it in production in the Amazon Cloud. We are using trunk = now, and we are working hard on getting a "1.0" release done. There = definitely are still some rough edges though. Greetings, Marcel