1 /* 2 JavaProgrammingLanguageContext.java 3 Creation date : 28/08/2010 4 Copyright © Benjamin Croizet (graffity2199@yahoo.fr) 5 6 This program is free software; you can redistribute it and/or 7 modify it under the terms of the GNU General Public License 8 or GNU Lesser General Public License as published by the 9 Free Software Foundation; either version 3 of the License, 10 or (at your option) any later version. 11 12 This program is distributed in the hope that it will be useful, 13 but WITHOUT ANY WARRANTY; without even the implied warranty of 14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 GNU General Public License for more details. 16 17 You should have received copies of the GNU General Public License 18 and GNU Lesser General Public License along with this program; 19 if not, write to the Free Software Foundation, Inc., 20 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 21 http://www.fsf.org/licensing/licenses/gpl.html 22 http://www.gnu.org/licenses/lgpl.html 23 */ 24 25 package net.sourceforge.plantumldependency.cli.main.option.programminglanguage.context.impl; 26 27 import java.util.Set; 28 import java.util.TreeSet; 29 import java.util.regex.Pattern; 30 31 import net.sourceforge.plantumldependency.cli.generic.GenericDependency; 32 import net.sourceforge.plantumldependency.cli.main.option.display.type.argument.DisplayType; 33 import net.sourceforge.plantumldependency.cli.main.option.programminglanguage.context.AbstractProgrammingLanguageContext; 34 35 /** 36 * The java 37 * {@link net.sourceforge.plantumldependency.cli.main.option.programminglanguage.context.ProgrammingLanguageContext} 38 * implementation. 39 * 40 * @author Benjamin Croizet (<a href="mailto:graffity2199@yahoo.fr>graffity2199@yahoo.fr</a>) 41 * @since 1.0.0 42 * @version 1.4.0 43 */ 44 public class JavaProgrammingLanguageContext extends AbstractProgrammingLanguageContext { 45 46 /** Serial version UID. */ 47 private static final long serialVersionUID = 4151258525377938109L; 48 49 /** 50 * Default constructor. 51 * 52 * @since 1.0.0 53 */ 54 public JavaProgrammingLanguageContext() { 55 super(); 56 } 57 58 /** 59 * Medium constructor. 60 * 61 * @param displayTypesOpts 62 * the {@link Set} of display types options which filter type to appear in the 63 * plantUML description, mustn't be <code>null</code>. 64 * @param displayPackageNamePatternOpt 65 * the {@link Pattern} which filter package name to appear in the plantUML 66 * description, mustn't be <code>null</code>. 67 * @param displayNamePatternOpt 68 * the {@link Pattern} which filter name to appear in the plantUML description, 69 * mustn't be <code>null</code>. 70 * @since 1.0.0 71 */ 72 public JavaProgrammingLanguageContext(final Set < DisplayType > displayTypesOpts, 73 final Pattern displayPackageNamePatternOpt, final Pattern displayNamePatternOpt) { 74 super(displayTypesOpts, displayPackageNamePatternOpt, displayNamePatternOpt); 75 } 76 77 /** 78 * Medium constructor. 79 * 80 * @param parsedAndSeenDependencies 81 * the original {@link Set} of {@link GenericDependency} which have been seen (as 82 * import for instance) and parsed to put in the context, mustn't be 83 * <code>null</code>. 84 * @param displayTypesOpts 85 * the {@link Set} of display types options which filter type to appear in the 86 * plantUML description, mustn't be <code>null</code>. 87 * @param displayPackageNamePatternOpt 88 * the {@link Pattern} which filter package name to appear in the plantUML 89 * description, mustn't be <code>null</code>. 90 * @param displayNamePatternOpt 91 * the {@link Pattern} which filter name to appear in the plantUML description, 92 * mustn't be <code>null</code>. 93 * @since 1.0.0 94 */ 95 public JavaProgrammingLanguageContext(final Set < GenericDependency > parsedAndSeenDependencies, 96 final Set < DisplayType > displayTypesOpts, final Pattern displayPackageNamePatternOpt, 97 final Pattern displayNamePatternOpt) { 98 super(parsedAndSeenDependencies, displayTypesOpts, displayPackageNamePatternOpt, displayNamePatternOpt); 99 } 100 101 /** 102 * Full constructor. 103 * 104 * @param parsedAndSeenDependencies 105 * the original {@link Set} of {@link GenericDependency} which have been seen (as 106 * import for instance) and parsed to put in the context, mustn't be 107 * <code>null</code>. 108 * @param parsedDependencies 109 * the original {@link Set} of {@link GenericDependency} which have been parsed to 110 * put in the context, mustn't be <code>null</code>. 111 * @param displayTypesOpts 112 * the {@link Set} of display types options which filter type to appear in the 113 * plantUML description, mustn't be <code>null</code>. 114 * @param displayPackageNamePatternOpt 115 * the {@link Pattern} which filter package name to appear in the plantUML 116 * description, mustn't be <code>null</code>. 117 * @param displayNamePatternOpt 118 * the {@link Pattern} which filter name to appear in the plantUML description, 119 * mustn't be <code>null</code>. 120 * @since 1.0.0 121 */ 122 public JavaProgrammingLanguageContext(final Set < GenericDependency > parsedAndSeenDependencies, 123 final Set < GenericDependency > parsedDependencies, final Set < DisplayType > displayTypesOpts, 124 final Pattern displayPackageNamePatternOpt, final Pattern displayNamePatternOpt) { 125 super(parsedAndSeenDependencies, parsedDependencies, new TreeSet < GenericDependency >(), displayTypesOpts, 126 displayPackageNamePatternOpt, displayNamePatternOpt); 127 } 128 129 /** 130 * Full constructor. 131 * 132 * @param parsedAndSeenDependencies 133 * the original parsed and seen dependencies {@link Set} of {@link GenericDependency} 134 * to put in the context, mustn't be <code>null</code>. 135 * @param parsedDependencies 136 * the original parsed dependencies {@link Set} of {@link GenericDependency} to put 137 * in the context, mustn't be <code>null</code>. 138 * @param potentialJavaLangSeenDependencies 139 * the original potential "java.lang" seen dependencies {@link Set} of 140 * {@link GenericDependency} to put in the context, mustn't be <code>null</code>. 141 * @param displayTypesOpts 142 * the {@link Set} of display types options which filter type to appear in the 143 * plantUML description, mustn't be <code>null</code>. 144 * @param displayPackageNamePatternOpt 145 * the {@link Pattern} which filter package name to appear in the plantUML 146 * description, mustn't be <code>null</code>. 147 * @param displayNamePatternOpt 148 * the {@link Pattern} which filter name to appear in the plantUML description, 149 * mustn't be <code>null</code>. 150 * @since 1.0.0 151 */ 152 public JavaProgrammingLanguageContext(final Set < GenericDependency > parsedAndSeenDependencies, 153 final Set < GenericDependency > parsedDependencies, 154 final Set < GenericDependency > potentialJavaLangSeenDependencies, 155 final Set < DisplayType > displayTypesOpts, final Pattern displayPackageNamePatternOpt, 156 final Pattern displayNamePatternOpt) { 157 super(parsedAndSeenDependencies, parsedDependencies, potentialJavaLangSeenDependencies, displayTypesOpts, 158 displayPackageNamePatternOpt, displayNamePatternOpt); 159 } 160 }