1 /* 2 CppProgrammingLanguageContext.java 3 Creation date : 31/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 C++ 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 CppProgrammingLanguageContext extends AbstractProgrammingLanguageContext { 45 46 /** Serial version UID. */ 47 private static final long serialVersionUID = -112668554824195713L; 48 49 /** 50 * Default constructor. 51 * 52 * @since 1.0.0 53 */ 54 public CppProgrammingLanguageContext() { 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 CppProgrammingLanguageContext(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} to put in the context, 82 * mustn't be <code>null</code>. 83 * @param displayTypesOpts 84 * the {@link Set} of display types options which filter type to appear in the 85 * plantUML description, mustn't be <code>null</code>. 86 * @param displayPackageNamePatternOpt 87 * the {@link Pattern} which filter package name to appear in the plantUML 88 * description, mustn't be <code>null</code>. 89 * @param displayNamePatternOpt 90 * the {@link Pattern} which filter name to appear in the plantUML description, 91 * mustn't be <code>null</code>. 92 * @since 1.0.0 93 */ 94 public CppProgrammingLanguageContext(final Set < GenericDependency > parsedAndSeenDependencies, 95 final Set < DisplayType > displayTypesOpts, final Pattern displayPackageNamePatternOpt, 96 final Pattern displayNamePatternOpt) { 97 super(parsedAndSeenDependencies, displayTypesOpts, displayPackageNamePatternOpt, displayNamePatternOpt); 98 } 99 100 /** 101 * Full constructor. 102 * 103 * @param parsedAndSeenDependencies 104 * the original {@link Set} of {@link GenericDependency} to put in the context, 105 * mustn't be <code>null</code>. 106 * @param parsedDependencies 107 * the original {@link Set} of {@link GenericDependency} to put in the context, 108 * mustn't be <code>null</code>. 109 * @param displayTypesOpts 110 * the {@link Set} of display types options which filter type to appear in the 111 * plantUML description, mustn't be <code>null</code>. 112 * @param displayPackageNamePatternOpt 113 * the {@link Pattern} which filter package name to appear in the plantUML 114 * description, mustn't be <code>null</code>. 115 * @param displayNamePatternOpt 116 * the {@link Pattern} which filter name to appear in the plantUML description, 117 * mustn't be <code>null</code>. 118 * @since 1.0.0 119 */ 120 public CppProgrammingLanguageContext(final Set < GenericDependency > parsedAndSeenDependencies, 121 final Set < GenericDependency > parsedDependencies, final Set < DisplayType > displayTypesOpts, 122 final Pattern displayPackageNamePatternOpt, final Pattern displayNamePatternOpt) { 123 super(parsedAndSeenDependencies, parsedDependencies, new TreeSet < GenericDependency >(), displayTypesOpts, 124 displayPackageNamePatternOpt, displayNamePatternOpt); 125 } 126 127 /** 128 * Full constructor. 129 * 130 * @param parsedAndSeenDependencies 131 * the original parsed and seen dependencies {@link Set} of {@link GenericDependency} 132 * to put in the context, mustn't be <code>null</code>. 133 * @param parsedDependencies 134 * the original parsed dependencies {@link Set} of {@link GenericDependency} to put 135 * in the context, mustn't be <code>null</code>. 136 * @param potentialJavaLangSeenDependencies 137 * the original potential "java.lang" seen dependencies {@link Set} of 138 * {@link GenericDependency} to put in the context, mustn't be <code>null</code>. 139 * @param displayTypesOpts 140 * the {@link Set} of display types options which filter type to appear in the 141 * plantUML description, mustn't be <code>null</code>. 142 * @param displayPackageNamePatternOpt 143 * the {@link Pattern} which filter package name to appear in the plantUML 144 * description, mustn't be <code>null</code>. 145 * @param displayNamePatternOpt 146 * the {@link Pattern} which filter name to appear in the plantUML description, 147 * mustn't be <code>null</code>. 148 * @since 1.0.0 149 */ 150 public CppProgrammingLanguageContext(final Set < GenericDependency > parsedAndSeenDependencies, 151 final Set < GenericDependency > parsedDependencies, 152 final Set < GenericDependency > potentialJavaLangSeenDependencies, 153 final Set < DisplayType > displayTypesOpts, final Pattern displayPackageNamePatternOpt, 154 final Pattern displayNamePatternOpt) { 155 super(parsedAndSeenDependencies, parsedDependencies, potentialJavaLangSeenDependencies, displayTypesOpts, 156 displayPackageNamePatternOpt, displayNamePatternOpt); 157 } 158 }