| /********************************************************************** |
| * Copyright (c) 2002,2003 Rational Software Corporation and others. |
| * All rights reserved. This program and the accompanying materials |
| * are made available under the terms of the Common Public License v0.5 |
| * which accompanies this distribution, and is available at |
| * http://www.eclipse.org/legal/cpl-v05.html |
| * |
| * Contributors: |
| * IBM Rational Software - Initial API and implementation |
| ***********************************************************************/ |
| package org.eclipse.cdt.internal.core.parser; |
| |
| import java.util.Map; |
| |
| import org.eclipse.cdt.core.parser.IProblem; |
| |
| |
| /** |
| * @author jcamelon |
| */ |
| public abstract class BaseProblemFactory { |
| |
| protected final static String PROBLEM = "IProblem : "; |
| protected final static String IN_FILE = " in file: "; |
| protected final static String ON_LINE = " on line: "; |
| |
| public abstract String createMessage(int id, Map arguments, int lineNumber, char[] fileName ); |
| |
| public IProblem createProblem(int id, int start, int end, int line, char[] file, String message, Map arguments, boolean warn, boolean error) { |
| return new Problem( id, start, end, line, file, message, arguments, warn, error); |
| } |
| |
| public boolean checkBitmask( int id, int bitmask ) |
| { |
| return ( id & bitmask ) != 0; |
| } |
| |
| protected IProblem createInternalProblem( int id, int start, int end, int line, char [] file, Map arguments, boolean warn, boolean error ) |
| { |
| return createProblem( id, start, end, line, file, createInternalMessage( id, arguments, line, file), arguments, warn, error ); |
| } |
| |
| /** |
| * @param id |
| * @param arguments |
| * @param line |
| * @param file |
| * @return |
| */ |
| private String createInternalMessage(int id, Map arguments, int line, char[] file) |
| { |
| if( checkBitmask( id, IProblem.INTERNAL_RELATED )) |
| { |
| StringBuffer buffer = new StringBuffer(); |
| |
| switch( id ) |
| { |
| } |
| |
| return buffer.toString(); |
| } |
| return null; |
| } |
| |
| } |