Return-Path: X-Original-To: apmail-chemistry-dev-archive@www.apache.org Delivered-To: apmail-chemistry-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id BC6B5CFC8 for ; Fri, 11 May 2012 10:38:44 +0000 (UTC) Received: (qmail 71785 invoked by uid 500); 11 May 2012 10:38:44 -0000 Delivered-To: apmail-chemistry-dev-archive@chemistry.apache.org Received: (qmail 71575 invoked by uid 500); 11 May 2012 10:38:41 -0000 Mailing-List: contact dev-help@chemistry.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@chemistry.apache.org Delivered-To: mailing list dev@chemistry.apache.org Received: (qmail 71535 invoked by uid 99); 11 May 2012 10:38:40 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 11 May 2012 10:38:40 +0000 X-ASF-Spam-Status: No, hits=-1.6 required=5.0 tests=RCVD_IN_DNSWL_MED,SPF_HELO_PASS,SPF_NEUTRAL X-Spam-Check-By: apache.org Received-SPF: neutral (athena.apache.org: local policy) Received: from [92.51.170.72] (HELO server01.mc0.hosteurope.de) (92.51.170.72) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 11 May 2012 10:38:34 +0000 Received: from server05.webmailer.hosteurope.de ([10.9.0.184]); by mailout.hosteurope.de (server01.mc0.hosteurope.de) running EXperimental Internet Mailer with esmtps (TLSv1:AES256-SHA:256) id 1SSnEi-000843-D0 for dev@chemistry.apache.org; Fri, 11 May 2012 12:38:12 +0200 Received: from nobody by server05.webmailer.hosteurope.de with local (Exim 4.72) (envelope-from ) id 1SSnEi-0000tE-BH for dev@chemistry.apache.org; Fri, 11 May 2012 12:38:12 +0200 To: Subject: CMIS Bridge MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Date: Fri, 11 May 2012 12:38:12 +0200 From: =?UTF-8?Q?Florian_M=C3=BCller?= Message-ID: X-Sender: fmui@apache.org User-Agent: Host Europe Webmailer/2.0 X-HE-Access: Yes X-bounce-key: webpack.hosteurope.de;fmui@apache.org;1336732692;aee760bf; X-Virus-Checked: Checked by ClamAV on apache.org Hi all, We have built something that we would like to contribute to OpenCMIS. We have called it the CMIS Bridge. The CMIS Bridge acts like a proxy between a CMIS client and a CMIS repository. This proxy can intercept CMIS requests and manipulate the data that goes in and out. Here are a few use cases for the CMIS Bridge: - Binding changes. For example, a repository with a broken Web Services binding implementation can use the bridge to accept Web Services calls and turn them into AtomPub calls. And vice versa, of course. - Repositories that don't implement the browser binding yet can use it as a quick way to provide the browser binding. - The bridge can also host a web application that uses the browser binding without the hassle of dealing with the same-origin policy in web browsers. - It can be used as a repository filter. It may only allow access to a few but not all repositories that a server exposes. - The bridge may handle authentication mechanisms that the target repository cannot handle. The combination of the browser binding and OAuth comes to mind. - Objects and properties can be hidden and virtual objects and properties can be added on the fly. - Objects can be enriched on the fly. For example, when a client uploads a MP3 file the bridge can extract the MP3 metadata and adds them before the object is created on the target repository. - Folder structures and templates can be created on the fly. - It can be used in protect a repository. For example, the repository could run behind a firewall and the bridge resides in the DMZ. There are probably many more use cases. The current implementation is quite basic. It works, but there is a lot of room for improvement and optimization. This is something we want to do over the next weeks and months. Are there any objections to add this to OpenCMIS? Thanks, Florian