Search in sources :

Example 36 with MarkupLanguage

use of org.eclipse.mylyn.wikitext.parser.markup.MarkupLanguage in project mylyn.docs by eclipse.

the class MarkupToDitaTask method execute.

@Override
public void execute() throws BuildException {
    if (file == null && filesets.isEmpty()) {
        // $NON-NLS-1$
        throw new BuildException(Messages.getString("MarkupToDitaTask.1"));
    }
    if (file != null && !filesets.isEmpty()) {
        // $NON-NLS-1$
        throw new BuildException(Messages.getString("MarkupToDitaTask.2"));
    }
    if (file != null) {
        if (!file.exists()) {
            // $NON-NLS-1$
            throw new BuildException(MessageFormat.format(Messages.getString("MarkupToDitaTask.3"), file));
        } else if (!file.isFile()) {
            // $NON-NLS-1$
            throw new BuildException(MessageFormat.format(Messages.getString("MarkupToDitaTask.4"), file));
        } else if (!file.canRead()) {
            // $NON-NLS-1$
            throw new BuildException(MessageFormat.format(Messages.getString("MarkupToDitaTask.5"), file));
        }
    }
    if (filenameFormat == null) {
        switch(topicStrategy) {
            case NONE:
                // $NON-NLS-1$
                filenameFormat = "$1.dita";
                break;
            default:
                // $NON-NLS-1$
                filenameFormat = "$1.ditamap";
        }
    }
    MarkupLanguage markupLanguage = createMarkupLanguage();
    for (FileSet fileset : filesets) {
        File filesetBaseDir = fileset.getDir(getProject());
        DirectoryScanner ds = fileset.getDirectoryScanner(getProject());
        String[] files = ds.getIncludedFiles();
        if (files != null) {
            File baseDir = ds.getBasedir();
            for (String file : files) {
                File inputFile = new File(baseDir, file);
                try {
                    processFile(markupLanguage, filesetBaseDir, inputFile);
                } catch (BuildException e) {
                    throw e;
                } catch (Exception e) {
                    throw new BuildException(MessageFormat.format(// $NON-NLS-1$
                    Messages.getString("MarkupToDitaTask.6"), // $NON-NLS-1$
                    inputFile, e.getMessage()), e);
                }
            }
        }
    }
    if (file != null) {
        try {
            processFile(markupLanguage, file.getParentFile(), file);
        } catch (BuildException e) {
            throw e;
        } catch (Exception e) {
            throw new BuildException(MessageFormat.format(Messages.getString("MarkupToDitaTask.7"), file, e.getMessage()), // $NON-NLS-1$
            e);
        }
    }
}
Also used : FileSet(org.apache.tools.ant.types.FileSet) DirectoryScanner(org.apache.tools.ant.DirectoryScanner) BuildException(org.apache.tools.ant.BuildException) MarkupLanguage(org.eclipse.mylyn.wikitext.parser.markup.MarkupLanguage) File(java.io.File) IOException(java.io.IOException) BuildException(org.apache.tools.ant.BuildException)

Example 37 with MarkupLanguage

use of org.eclipse.mylyn.wikitext.parser.markup.MarkupLanguage in project mylyn.docs by eclipse.

the class MarkupToHtmlTask method execute.

@Override
public void execute() throws BuildException {
    if (file == null && filesets.isEmpty()) {
        // $NON-NLS-1$
        throw new BuildException(Messages.getString("MarkupToHtmlTask.1"));
    }
    if (file != null && !filesets.isEmpty()) {
        // $NON-NLS-1$
        throw new BuildException(Messages.getString("MarkupToHtmlTask.2"));
    }
    if (file != null) {
        if (!file.exists()) {
            // $NON-NLS-1$
            throw new BuildException(MessageFormat.format(Messages.getString("MarkupToHtmlTask.3"), file));
        } else if (!file.isFile()) {
            // $NON-NLS-1$
            throw new BuildException(MessageFormat.format(Messages.getString("MarkupToHtmlTask.4"), file));
        } else if (!file.canRead()) {
            // $NON-NLS-1$
            throw new BuildException(MessageFormat.format(Messages.getString("MarkupToHtmlTask.5"), file));
        }
    }
    MarkupLanguage markupLanguage = createMarkupLanguage();
    for (Stylesheet stylesheet : stylesheets) {
        if (stylesheet.url == null && stylesheet.file == null) {
            // $NON-NLS-1$
            throw new BuildException(Messages.getString("MarkupToHtmlTask.6"));
        }
        if (stylesheet.url != null && stylesheet.file != null) {
            // $NON-NLS-1$
            throw new BuildException(Messages.getString("MarkupToHtmlTask.7"));
        }
        if (stylesheet.file != null) {
            if (!stylesheet.file.exists()) {
                // $NON-NLS-1$
                throw new BuildException(Messages.getString("MarkupToHtmlTask.8") + stylesheet.file);
            }
            if (!stylesheet.file.isFile()) {
                // $NON-NLS-1$
                throw new BuildException(Messages.getString("MarkupToHtmlTask.9") + stylesheet.file);
            }
            if (!stylesheet.file.canRead()) {
                // $NON-NLS-1$
                throw new BuildException(Messages.getString("MarkupToHtmlTask.10") + stylesheet.file);
            }
        }
    }
    Set<File> outputFolders = new HashSet<File>();
    for (FileSet fileset : filesets) {
        File filesetBaseDir = fileset.getDir(getProject());
        DirectoryScanner ds = fileset.getDirectoryScanner(getProject());
        String[] files = ds.getIncludedFiles();
        if (files != null) {
            File baseDir = ds.getBasedir();
            for (String file : files) {
                File inputFile = new File(baseDir, file);
                testForOutputFolderConflict(outputFolders, inputFile);
                try {
                    processFile(markupLanguage, filesetBaseDir, inputFile);
                } catch (BuildException e) {
                    throw e;
                } catch (Exception e) {
                    throw new BuildException(MessageFormat.format(// $NON-NLS-1$
                    Messages.getString("MarkupToHtmlTask.11"), // $NON-NLS-1$
                    inputFile, e.getMessage()), e);
                }
            }
        }
    }
    if (file != null) {
        testForOutputFolderConflict(outputFolders, file);
        try {
            processFile(markupLanguage, file.getParentFile(), file);
        } catch (BuildException e) {
            throw e;
        } catch (Exception e) {
            throw new BuildException(MessageFormat.format(Messages.getString("MarkupToHtmlTask.12"), file, e.getMessage()), // $NON-NLS-1$
            e);
        }
    }
}
Also used : FileSet(org.apache.tools.ant.types.FileSet) DirectoryScanner(org.apache.tools.ant.DirectoryScanner) BuildException(org.apache.tools.ant.BuildException) MarkupLanguage(org.eclipse.mylyn.wikitext.parser.markup.MarkupLanguage) File(java.io.File) BuildException(org.apache.tools.ant.BuildException) HashSet(java.util.HashSet)

Example 38 with MarkupLanguage

use of org.eclipse.mylyn.wikitext.parser.markup.MarkupLanguage in project mylyn.docs by eclipse.

the class TracWikiLanguageTest method testDiscoverable.

public void testDiscoverable() {
    // $NON-NLS-1$
    MarkupLanguage language = ServiceLocator.getInstance().getMarkupLanguage("TracWiki");
    assertNotNull(language);
    assertTrue(language instanceof TracWikiLanguage);
}
Also used : MarkupLanguage(org.eclipse.mylyn.wikitext.parser.markup.MarkupLanguage) TracWikiLanguage(org.eclipse.mylyn.wikitext.tracwiki.TracWikiLanguage)

Example 39 with MarkupLanguage

use of org.eclipse.mylyn.wikitext.parser.markup.MarkupLanguage in project mylyn.docs by eclipse.

the class CommonMarkLanguageTest method isDiscoverable.

@Test
public void isDiscoverable() {
    MarkupLanguage markupLanguage = ServiceLocator.getInstance().getMarkupLanguage("CommonMark");
    assertNotNull(markupLanguage);
    assertEquals(CommonMarkLanguage.class, markupLanguage.getClass());
}
Also used : MarkupLanguage(org.eclipse.mylyn.wikitext.parser.markup.MarkupLanguage) Test(org.junit.Test)

Example 40 with MarkupLanguage

use of org.eclipse.mylyn.wikitext.parser.markup.MarkupLanguage in project mylyn.docs by eclipse.

the class HtmlLanguageTest method isDiscoverable.

@Test
public void isDiscoverable() {
    MarkupLanguage language = ServiceLocator.getInstance().getMarkupLanguage("HTML");
    assertNotNull(language);
    assertTrue(language instanceof HtmlLanguage);
}
Also used : MarkupLanguage(org.eclipse.mylyn.wikitext.parser.markup.MarkupLanguage) HtmlLanguage(org.eclipse.mylyn.wikitext.html.HtmlLanguage) Test(org.junit.Test)

Aggregations

MarkupLanguage (org.eclipse.mylyn.wikitext.parser.markup.MarkupLanguage)60 Test (org.junit.Test)18 AbstractMarkupLanguage (org.eclipse.mylyn.wikitext.parser.markup.AbstractMarkupLanguage)15 MarkupParser (org.eclipse.mylyn.wikitext.parser.MarkupParser)8 File (java.io.File)7 BuildException (org.apache.tools.ant.BuildException)7 CoreException (org.eclipse.core.runtime.CoreException)7 MockMarkupLanguage (org.eclipse.mylyn.internal.wikitext.MockMarkupLanguage)7 StringWriter (java.io.StringWriter)6 HashMap (java.util.HashMap)5 DirectoryScanner (org.apache.tools.ant.DirectoryScanner)5 FileSet (org.apache.tools.ant.types.FileSet)5 OutlineItem (org.eclipse.mylyn.wikitext.parser.outline.OutlineItem)5 Point (org.eclipse.swt.graphics.Point)5 IOException (java.io.IOException)4 IFile (org.eclipse.core.resources.IFile)4 IExtensionPoint (org.eclipse.core.runtime.IExtensionPoint)4 TreeMap (java.util.TreeMap)3 IConfigurationElement (org.eclipse.core.runtime.IConfigurationElement)3 IProgressMonitor (org.eclipse.core.runtime.IProgressMonitor)3