MyFaces Developer Notes ======================= This document deals with issues that are important for MyFaces developers and custom component developers. (also see FAQs.txt) ====================================================================== Getting started with the build * Copy build/build.properties to build/build.local.properties and set the properties defined in that file * from the build directory ant all ant all-tests ====================================================================== Component developer guidelines ====================================================================== MyFaces developers guidelines * Code style Basis for the code conventions of the MyFaces project are Suns Java Code Conventions at http://java.sun.com/docs/codeconv/html/CodeConvTOC.doc.html Well as the initiators of this project we take the liberty to postulate one exception: Opening braces go on the next line and there is a new line after closing braces before else/catch/finally/while(in do-while)! ;-) * Naming is a fundamental concern. The name of a class, method or field should tell as much as possible of it's meaning and usage. Avoid short names like "Helper", "calc" or "check". Use "FinancialConsultance", "calculateMyYearlyIncome" and "isMyIncomeTooLow" instead. * Addition special comments (see 10.5.4 in CodeConv) TODO: something that is not yet ready HACK: something that is bogus but (meanwhile) necessary to make it work XXX: something that is bogus but works FIXME: something that is bogus and broken * CVS - Every developer may upload files, if (s)he is confident, that this file is usable for others. - Uploaded java files must be compilable, of course. - Changes to java files must leave the whole project in a state where it is still compilable. - Foreign files should only be committed (changed) after consulting and/or informing the original author. The same applies for deleting, of course. Exception: Trivial changes such as spelling mistakes in comments, etc. - Just to be sure: Don't forget the message(s) on commit ;-) * Communication - Main communication instrument among MyFaces developers is the MyFaces developer mailing list (myfaces-develop@lists.sourceforge.net). - Every active MyFaces developer must subscribe to this list. * Copyright Every file should start with the following copyright notice: /** * MyFaces - the free JSF implementation * Copyright (C) 2003, 2004 The MyFaces Team (http://myfaces.sourceforge.net) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ * Class and Interface comment Every class and interface should have a javadoc similar to /** * Very detailed description goes here... ;-) * * $Log$ * Revision 1.14 2004/04/20 18:07:16 bdudney * build file refactoring * * Revision 1.13 2004/03/25 09:14:52 manolito * no message * * @author Bug Rogers (latest modification by $Author$) * @version $Revision$ $Date$ */