001 // Copyright 2005-2006 Ferdinand Prantl <prantl@users.sourceforge.net> 002 // Copyright 2001-2004 The Apache Software Foundation 003 // All rights reserved. 004 // 005 // Licensed under the Apache License, Version 2.0 (the "License"); 006 // you may not use this file except in compliance with the License. 007 // You may obtain a copy of the License at 008 // 009 // http://www.apache.org/licenses/LICENSE-2.0 010 // 011 // Unless required by applicable law or agreed to in writing, software 012 // distributed under the License is distributed on an "AS IS" BASIS, 013 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 014 // See the License for the specific language governing permissions and 015 // limitations under the License. 016 // 017 // See http://ant-eclipse.sourceforge.net for the most recent version 018 // and more information. 019 020 package prantl.ant.eclipse; 021 022 /** 023 * Describes an element under the element classpath referring to compiled classes. The 024 * attributes <tt>exported</tt> and <tt>source</tt> are optional. 025 * 026 * @since Ant-Eclipse 1.0 027 * @author Ferdinand Prantl <prantl@users.sourceforge.net> 028 */ 029 public abstract class ClassPathEntryBinaryElement extends ClassPathEntryPathElement { 030 031 private boolean exported = false; 032 033 private String source = null; 034 035 private String javadoc = null; 036 037 /** 038 * Creates a new instance of the element containing binary code. 039 * 040 * @since Ant-Eclipse 1.0 041 */ 042 public ClassPathEntryBinaryElement() { 043 } 044 045 /** 046 * Returns if the referred compiled byte-code is exported during the jar-file 047 * generation (not by default). 048 * 049 * @return <tt>True</tt> if the referred compiled byte-code is exported during the 050 * jar-file generation. 051 */ 052 public boolean getExported() { 053 return exported; 054 } 055 056 /** 057 * Sets if the referred compiled byte-code is exported during the jar-file generation. 058 * 059 * @param flag 060 * <tt>True</tt> if the referred compiled byte-code is exported during the 061 * jar-file generation. 062 * @since Ant-Eclipse 1.0 063 */ 064 public void setExported(boolean flag) { 065 exported = flag; 066 } 067 068 /** 069 * Returns a path with source code to the referred compiled byte-code or <tt>null</tt> 070 * if it has not been set, which means that the sources are not available. 071 * 072 * @return A path with source code to the referred compiled byte-code or <tt>null</tt> 073 * if not having been set. 074 */ 075 public String getSource() { 076 return source; 077 } 078 079 /** 080 * Sets the path with source code to the referred compiled byte-code. 081 * 082 * @param value 083 * The path with source code to the referred compiled byte-code. 084 * @since Ant-Eclipse 1.0 085 */ 086 public void setSource(String value) { 087 source = value; 088 } 089 090 /** 091 * Returns a path with a generated javadoc documentation to the referred compiled 092 * byte-code or <tt>null</tt> if it has not been set, which means that the javadoc 093 * is not available. 094 * 095 * The path must be in formats accepted by Eclipse; either a path to a directory or a 096 * path to a zip-archive with correct prefixing: 097 * 098 * <ul> 099 * <li>file:/path/to/a/directory/</li> 100 * <li>jar:file:/path/to/a/file.zip!/</li> 101 * </ul> 102 * 103 * @return A path with javadoc to the referred compiled byte-code or <tt>null</tt> 104 * if not having been set. 105 */ 106 public String getJavadoc() { 107 return javadoc; 108 } 109 110 /** 111 * Sets the path with a generated javadoc documentation to the referred compiled 112 * byte-code. 113 * 114 * The path must be in formats accepted by Eclipse; either a path to a directory or a 115 * path to a zip-archive with correct prefixing: 116 * 117 * <ul> 118 * <li>file:/path/to/a/directory/</li> 119 * <li>jar:file:/path/to/a/file.zip!/</li> 120 * </ul> 121 * 122 * @param value 123 * The path with javadoc to the referred compiled byte-code. 124 * @since Ant-Eclipse 1.0 125 */ 126 public void setJavadoc(String value) { 127 javadoc = value; 128 } 129 130 }