Return-Path: X-Original-To: apmail-jackrabbit-oak-dev-archive@minotaur.apache.org Delivered-To: apmail-jackrabbit-oak-dev-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 06EBE9E80 for ; Thu, 7 Jun 2012 13:55:42 +0000 (UTC) Received: (qmail 4183 invoked by uid 500); 7 Jun 2012 13:55:41 -0000 Delivered-To: apmail-jackrabbit-oak-dev-archive@jackrabbit.apache.org Received: (qmail 4152 invoked by uid 500); 7 Jun 2012 13:55:41 -0000 Mailing-List: contact oak-dev-help@jackrabbit.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: oak-dev@jackrabbit.apache.org Delivered-To: mailing list oak-dev@jackrabbit.apache.org Received: (qmail 4142 invoked by uid 99); 7 Jun 2012 13:55:41 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 07 Jun 2012 13:55:41 +0000 X-ASF-Spam-Status: No, hits=-2.3 required=5.0 tests=RCVD_IN_DNSWL_MED,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of anchela@adobe.com designates 64.18.1.21 as permitted sender) Received: from [64.18.1.21] (HELO exprod6og108.obsmtp.com) (64.18.1.21) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 07 Jun 2012 13:55:32 +0000 Received: from outbound-smtp-2.corp.adobe.com ([193.104.215.16]) by exprod6ob108.postini.com ([64.18.5.12]) with SMTP ID DSNKT9CyvhIpQxJTIsgeagIx6ZH5dW3ebndE@postini.com; Thu, 07 Jun 2012 06:55:12 PDT Received: from inner-relay-4.eur.adobe.com (inner-relay-4b [10.128.4.237]) by outbound-smtp-2.corp.adobe.com (8.12.10/8.12.10) with ESMTP id q57DtAX9003851 for ; Thu, 7 Jun 2012 06:55:10 -0700 (PDT) Received: from nacas01.corp.adobe.com (nacas01.corp.adobe.com [10.8.189.99]) by inner-relay-4.eur.adobe.com (8.12.10/8.12.9) with ESMTP id q57Dt1Yw005182 for ; Thu, 7 Jun 2012 06:55:09 -0700 (PDT) Received: from eurhub01.eur.adobe.com (10.128.4.30) by nacas01.corp.adobe.com (10.8.189.99) with Microsoft SMTP Server (TLS) id 8.3.192.1; Thu, 7 Jun 2012 06:55:05 -0700 Received: from angela.corp.adobe.com (10.132.1.18) by eurhub01.eur.adobe.com (10.128.4.111) with Microsoft SMTP Server id 8.3.192.1; Thu, 7 Jun 2012 14:55:03 +0100 Message-ID: <4FD0B2B7.9000202@adobe.com> Date: Thu, 7 Jun 2012 15:55:03 +0200 From: Angela Schreiber User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; en-US; rv:1.9.2.18) Gecko/20110616 Thunderbird/3.1.11 MIME-Version: 1.0 To: Subject: Re: NodeDelegate leakage from NodeImpl References: <4FD08B5E.7020508@gmail.com> <4FD096BD.5050206@gmx.de> In-Reply-To: <4FD096BD.5050206@gmx.de> Content-Type: text/plain; charset="ISO-8859-1"; format=flowed Content-Transfer-Encoding: 8bit On 6/7/12 1:55 PM, Julian Reschke wrote: > On 2012-06-07 13:07, Michael D�rig wrote: >> >> Hi, >> >> I noticed that since revision 1344662 NodeImpl has an (package private) >> accessor for NodeDelegate. This defeats the original intent of the >> separation of NodeImpl and NodeDelegate (OAK-84): users should not be >> able to gain access to internals by hacking NodeImpl. But precisely this >> is now possible when a user put his code into the >> org.apache.jackrabbit.oak.jcr package. >> >> Michael > > Apparently because UserManagerImpl deals with nodes, but does want to > set properties directly using the delegates. (Performance? Skipping checks?) being able to set protected properties (currently this check is missing but we will need to add it once the node type stuff is implemented)... feel free to change the implementation of SessionDelegate#getDelegate(Node jcrNode)... i didn't want to use the method taking a path since i have the node at hand already.... that looked really bad to me. after all i am not convinced that the separation between delegate and impl is really the right approach... to much duplicate methods with no actual benefit IMO. regards angela