Return-Path: Delivered-To: apmail-cxf-dev-archive@www.apache.org Received: (qmail 18033 invoked from network); 14 Oct 2010 11:45:14 -0000 Received: from unknown (HELO mail.apache.org) (140.211.11.3) by 140.211.11.9 with SMTP; 14 Oct 2010 11:45:14 -0000 Received: (qmail 47499 invoked by uid 500); 14 Oct 2010 11:45:14 -0000 Delivered-To: apmail-cxf-dev-archive@cxf.apache.org Received: (qmail 47014 invoked by uid 500); 14 Oct 2010 11:45:11 -0000 Mailing-List: contact dev-help@cxf.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@cxf.apache.org Delivered-To: mailing list dev@cxf.apache.org Received: (qmail 46996 invoked by uid 99); 14 Oct 2010 11:45:10 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 14 Oct 2010 11:45:10 +0000 X-ASF-Spam-Status: No, hits=2.2 required=10.0 tests=FREEMAIL_FROM,HTML_MESSAGE,RCVD_IN_DNSWL_NONE,SPF_PASS,T_TO_NO_BRKTS_FREEMAIL X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of sberyozkin@gmail.com designates 209.85.214.41 as permitted sender) Received: from [209.85.214.41] (HELO mail-bw0-f41.google.com) (209.85.214.41) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 14 Oct 2010 11:45:04 +0000 Received: by bwz19 with SMTP id 19so459471bwz.0 for ; Thu, 14 Oct 2010 04:44:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:received:date:message-id :subject:from:to:content-type; bh=AuXFbNYpLpS7lXxEAYsFgT0y3Wo6O/aoW7rCB0Aj/N8=; b=XaSRMIw7winUEUwP/KNWr+FKNvkHnsHySLgMEPra8vXLLbpOSn4ACdBK5yBQL7UBcQ 1cAp5kVH6cwv6+mp5zLVcdUgedM/1GmvqA1fq/0HtT039E5+6BFQCxEMuSVOad33xIms wnBzQ8mE/V8fHZo1hnFsuaKh/WTXxDBs+RShE= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:date:message-id:subject:from:to:content-type; b=MHmJ/jHRflGzmlUWeWoAkGIoAwmtZPsfng0Qa0oOP/aywQc2vDTDtgMcKjVZ1vHOQU fYFmy4GVyQ0q1q1Z9OA79jHJKTF4lLpem6OSxjsbSCyo2ZtnrLTQnk05oqcI/sAApylT qMDk6/hNCKWsDDCuRdwPOSuJ/RI8KiGJZiiSk= MIME-Version: 1.0 Received: by 10.204.71.84 with SMTP id g20mr9023129bkj.175.1287056209649; Thu, 14 Oct 2010 04:36:49 -0700 (PDT) Received: by 10.204.152.13 with HTTP; Thu, 14 Oct 2010 04:36:49 -0700 (PDT) Date: Thu, 14 Oct 2010 12:36:49 +0100 Message-ID: Subject: Advanced Configuration in DOSGI From: Sergey Beryozkin To: dev@cxf.apache.org Content-Type: multipart/alternative; boundary=00504502de262ea2b904929220d8 --00504502de262ea2b904929220d8 Content-Type: text/plain; charset=ISO-8859-1 Hi DOSGI (RI) offers two options for users to configure the providers and consumers 1. Intents - short policy-like statements 2. Properties In some cases these options may not be sufficient. For example, consider a requirement to configure a DOSGI consumer with TLS properties or HTTP proxy properties. Templated intents might be used in principle - however it seems a difficult thing to achieve. Ex, on the server side, the DOSGI would need to figure out which individual properties needs to be blocked from the publication (ex, the location of the key store, etc). Application bundles would need to import concrete implementations of such templated intents and depend on DOSGI RI. Also I'm not sure if intents can be used for a pure client-side configuration (ex, http proxies). Finally, perhaps intents are not really usable for some low-level configuration or customization. Properties may always be used - but this is problematic for two reasons. In complex cases we may have a lot of complex properties. Of more concern to me is that we currently have not agreed on using a shared set of properties for SOAP and REST services thus we'd have many duplicated properties for say configuring HTTPS or HTTP proxies for either SOAP clients or proxy-based JAXRS clients. So one way here is to figure out how to let users configure easily consumers to work with HTTP proxies. Here is the concrete example taken from the recent email on the users list : asdf qwer lets try to figure out how we can configure in DOSGI. One option is to let users just reuse such configurations. So here's one concrete proposal. Introduce "org.apache.cxf.ws/rs.external.config" (or similar). Ex, "org.apache.cxf.ws.external.config" : "classpath:/config/http.xml" Thus users will be able to reuse some existing configuration which they may also be relying upon in non-DOSGI environments but they will use the DOSGI properties mechanism (at the cost of introducing one extra property per ws/rs) to bootstrap those existing CXF config beans. Comments, any other ideas ? thanks, Sergey --00504502de262ea2b904929220d8--