From: Jan P. <jp...@us...> - 2005-09-09 10:57:10
|
Update of /cvsroot/e-p-i-c/org.epic.perleditor/src/org/epic/core/content In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv12886/src/org/epic/core/content Added Files: PerlContentDescriber.java Log Message: Provides support for the "Perl Source File" content type. This class is referenced by an extension declared in plugin.xml. Content types will eventually allow us to handle Perl files without the .pl/.pm extension. --- NEW FILE: PerlContentDescriber.java --- package org.epic.core.content; import java.io.*; import org.eclipse.core.runtime.QualifiedName; import org.eclipse.core.runtime.content.IContentDescription; import org.eclipse.core.runtime.content.ITextContentDescriber; /** * Content type describer for Perl source files. * * @author jploski */ public class PerlContentDescriber implements ITextContentDescriber { private static final QualifiedName[] NO_OPTIONS = new QualifiedName[0]; public int describe(Reader contents, IContentDescription description) throws IOException { BufferedReader reader = new BufferedReader(contents); String line = reader.readLine(); return line == null || !line.startsWith("#!") || !(line.indexOf("perl") != -1) ? INDETERMINATE : VALID; } public int describe(InputStream contents, IContentDescription description) throws IOException { // TODO do we need support for other charsets here? return describe(new InputStreamReader(contents, "ISO-8859-1"), description); } public QualifiedName[] getSupportedOptions() { return NO_OPTIONS; } } |