Return-Path: Delivered-To: apmail-avalon-dev-archive@avalon.apache.org Received: (qmail 1529 invoked by uid 500); 23 Aug 2003 09:48:11 -0000 Mailing-List: contact dev-help@avalon.apache.org; run by ezmlm Precedence: bulk List-Unsubscribe: List-Subscribe: List-Help: List-Post: List-Id: "Avalon Developers List" Reply-To: "Avalon Developers List" Delivered-To: mailing list dev@avalon.apache.org Received: (qmail 1479 invoked from network); 23 Aug 2003 09:48:10 -0000 Received: from main.gmane.org (80.91.224.249) by daedalus.apache.org with SMTP; 23 Aug 2003 09:48:10 -0000 Received: from list by main.gmane.org with local (Exim 3.35 #1 (Debian)) id 19qV0x-0005tB-00 for ; Sat, 23 Aug 2003 11:48:55 +0200 X-Injected-Via-Gmane: http://gmane.org/ To: dev@avalon.apache.org Received: from sea.gmane.org ([80.91.224.252]) by main.gmane.org with esmtp (Exim 3.35 #1 (Debian)) id 19qV0x-0005t3-00 for ; Sat, 23 Aug 2003 11:48:55 +0200 Received: from news by sea.gmane.org with local (Exim 3.35 #1 (Debian)) id 19qV03-00053e-00 for ; Sat, 23 Aug 2003 11:47:59 +0200 From: Leo Simons Subject: Re: [Components: TimeScheduler] TimeScheduler behaviour with periodic triggers Date: Sat, 23 Aug 2003 11:47:54 +0200 Lines: 44 Message-ID: References: <8CB263A54D013842A2AF262CE9952ACB14BFF2@feanor.pro-vision.de> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit X-Complaints-To: usenet@sea.gmane.org User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.3) Gecko/20030312 X-Accept-Language: en-us, en In-Reply-To: <8CB263A54D013842A2AF262CE9952ACB14BFF2@feanor.pro-vision.de> Sender: news X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N Stefan Seifert wrote: > OK, sounds reasonable. Attached is a new patch, which makes it > possible to override the default implementation of "runEntry", > without changing the current rescheduling behaviour. > > I'm not altogether happy with this patch because now some seemingly > random methods and fields are protected, some are private. And > because of dependencies of the non-public class TimeScheduleEntry the > overriding class has to be placed in the package > org.apache.avalon.cornerstone.blocks.scheduler as well. > > Do you want to apply this patch in this way, or should i/we > > 1) try to make a consistent "contract interface" for overiding > selected implementation details of the DefaultTimeScheduler class, > but perhaps some refactoring is needed to achieve that. > > or 2) just make the rescheduling behavior in some way configurable, > so it is not needed to override at all? Hi Stefan, I took a more detailed look at the package (tried both patches), and I figured the most acceptable solution was probably a little refactoring. So, how? Since the class previously didn't require any configuration, I'd like to keep things that way. After all, it is still a pretty simple tool, for good reason. Yet I agree just making a few random fields / methods protected is ugly because it makes the next person to look at the code scratch his head. The package implementation is pretty well-hidden, which is normally a good thing to do (imo) until you find you need to expose it. Since we now have found that need, I figured we'd just expose it. Could you please take a look at the changes I made to the class and lemme know if this works for you? - Leo PS: the fact that I didn't apply your patches as-sent does not mean they were not valuable in figuring out what to do nor that you should refrain from sending them in for any future issues :D --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscribe@avalon.apache.org For additional commands, e-mail: dev-help@avalon.apache.org