Example usage for org.eclipse.jdt.core IJavaProject setOption

List of usage examples for org.eclipse.jdt.core IJavaProject setOption

Introduction

In this page you can find the example usage for org.eclipse.jdt.core IJavaProject setOption.

Prototype

void setOption(String optionName, String optionValue);

Source Link

Document

Helper method for setting one option value only.

Usage

From source file:org.eclipse.wb.tests.designer.core.model.variables.FieldUniqueTest.java

License:Open Source License

public void test_componentName() throws Exception {
    ContainerInfo panel = parseContainer("public class Test extends JPanel {",
            "  private JButton m_myButton_Q;", "  public Test() {", "    {",
            "      m_myButton_Q = new JButton();", "      add(m_myButton_Q);", "    }", "  }", "}");
    IJavaProject javaProject = m_lastEditor.getJavaProject();
    // prepare "button"
    JavaInfo button = panel.getChildrenComponents().get(0);
    FieldUniqueVariableSupport variableSupport = (FieldUniqueVariableSupport) button.getVariableSupport();
    // check plain/component names
    Map<String, String> options;
    {/*w w w  .  jav  a2  s. co m*/
        options = ProjectUtils.getOptions(javaProject);
        javaProject.setOption(JavaCore.CODEASSIST_FIELD_PREFIXES, "m_");
        javaProject.setOption(JavaCore.CODEASSIST_FIELD_SUFFIXES, "_Q");
    }
    try {
        assertEquals("m_myButton_Q", variableSupport.getName());
        assertEquals("myButton", variableSupport.getComponentName());
    } finally {
        javaProject.setOptions(options);
    }
}

From source file:org.eclipse.wb.tests.designer.core.model.variables.FieldUniqueTest.java

License:Open Source License

public void test_toLocal_2_withPrefixes() throws Exception {
    ContainerInfo panel = parseContainer("class Test extends JPanel {", "  private JButton m_button_Q;",
            "  public Test() {", "    m_button_Q = new JButton();", "    add(m_button_Q);", "  }", "}");
    IJavaProject javaProject = m_lastEditor.getJavaProject();
    ////from  w ww .j  ava2s  . com
    Map<String, String> options;
    {
        options = ProjectUtils.getOptions(javaProject);
        javaProject.setOption(JavaCore.CODEASSIST_FIELD_PREFIXES, "m_");
        javaProject.setOption(JavaCore.CODEASSIST_FIELD_SUFFIXES, "_Q");
    }
    JavaInfo button = panel.getChildrenComponents().get(0);
    // convert
    try {
        button.getVariableSupport().convertFieldToLocal();
        assertTrue(button.getVariableSupport() instanceof LocalUniqueVariableSupport);
    } finally {
        javaProject.setOptions(options);
    }
    //
    assertTrue(button.getVariableSupport() instanceof LocalUniqueVariableSupport);
    assertAST(m_lastEditor);
    assertEquals(
            getTestSource("class Test extends JPanel {", "  public Test() {",
                    "    JButton button = new JButton();", "    add(button);", "  }", "}"),
            m_lastEditor.getSource());
}

From source file:org.eclipse.wb.tests.designer.core.model.variables.LocalUniqueTest.java

License:Open Source License

public void test_toField_withPrefixes() throws Exception {
    ContainerInfo panel = parseContainer("public class Test extends JPanel {", "  public Test() {",
            "    JButton button = new JButton();", "    add(button);", "  }", "}");
    IJavaProject javaProject = m_lastEditor.getJavaProject();
    ////from w ww  .j av a2 s .c o  m
    Map<String, String> options;
    {
        options = ProjectUtils.getOptions(javaProject);
        javaProject.setOption(JavaCore.CODEASSIST_FIELD_PREFIXES, "m_");
        javaProject.setOption(JavaCore.CODEASSIST_FIELD_SUFFIXES, "_Q");
    }
    //
    try {
        check_toField(panel,
                getTestSource("public class Test extends JPanel {", "  private JButton m_button_Q;",
                        "  public Test() {", "    m_button_Q = new JButton();", "    add(m_button_Q);", "  }",
                        "}"));
    } finally {
        javaProject.setOptions(options);
    }
}

From source file:org.eclipse.wb.tests.designer.core.model.variables.TextPropertyRenameTest.java

License:Open Source License

public void test_textPropertyRename_field() throws Exception {
    IJavaProject javaProject = m_testProject.getJavaProject();
    String[] lines = new String[] { "public final class Test extends JPanel {", "  private JButton m_button_Q;",
            "  public Test() {", "    m_button_Q = new JButton();", "    add(m_button_Q);", "  }", "}" };
    String[] expectedLines = new String[] { "public final class Test extends JPanel {",
            "  private JButton m_firstButton_Q;", "  public Test() {", "    m_firstButton_Q = new JButton();",
            "    m_firstButton_Q.setText(\"first\");", "    add(m_firstButton_Q);", "  }", "}" };
    // remember existing project options and set prefix/suffix
    Map<String, String> options;
    {//from  www .  ja v  a 2s .co  m
        options = ProjectUtils.getOptions(javaProject);
        javaProject.setOption(JavaCore.CODEASSIST_FIELD_PREFIXES, "m_");
        javaProject.setOption(JavaCore.CODEASSIST_FIELD_SUFFIXES, "_Q");
    }
    try {
        check_textPropertyRename(lines, expectedLines, "first",
                IPreferenceConstants.V_VARIABLE_TEXT_MODE_ALWAYS);
    } finally {
        javaProject.setOptions(options);
    }
}

From source file:org.eclipse.wb.tests.designer.core.util.ast.AstEditorTest.java

License:Open Source License

public void test_ASTCG_getIndentation_2_space() throws Exception {
    createTypeDeclaration_TestC("");
    AstCodeGeneration generation = m_lastEditor.getGeneration();
    // configure for spaces
    IJavaProject javaProject = m_lastEditor.getModelUnit().getJavaProject();
    javaProject.setOption(DefaultCodeFormatterConstants.FORMATTER_TAB_CHAR, "space");
    javaProject.setOption(DefaultCodeFormatterConstants.FORMATTER_TAB_SIZE, "4");
    // do checks/*from  w  w w  .  j  a va  2 s  .c  om*/
    try {
        assertSame("", generation.getIndentation(0));
        assertEquals(StringUtils.repeat(" ", 4), generation.getIndentation(1));
        // increase tab size
        javaProject.setOption(DefaultCodeFormatterConstants.FORMATTER_TAB_SIZE, "8");
        assertEquals(StringUtils.repeat(" ", 8), generation.getIndentation(1));
        // set bad tab size
        javaProject.setOption(DefaultCodeFormatterConstants.FORMATTER_TAB_SIZE, "x");
        assertEquals(StringUtils.repeat(" ", 4), generation.getIndentation(1));
    } finally {
        // restore original formatter settings
        javaProject.setOption(DefaultCodeFormatterConstants.FORMATTER_TAB_CHAR, "tab");
        javaProject.setOption(DefaultCodeFormatterConstants.FORMATTER_TAB_SIZE, "1");
    }
}

From source file:org.eclipse.wb.tests.designer.core.util.ast.AstEditorTest.java

License:Open Source License

public void test_ASTCG_getUseCompactAssignment() throws Exception {
    createTypeDeclaration_TestC("");
    AstCodeGeneration generation = m_lastEditor.getGeneration();
    IJavaProject javaProject = m_lastEditor.getModelUnit().getJavaProject();
    ///*from   w  w w.  ja  v  a 2  s  .  com*/
    javaProject.setOption(DefaultCodeFormatterConstants.FORMATTER_INSERT_SPACE_BEFORE_ASSIGNMENT_OPERATOR,
            JavaCore.INSERT);
    assertEquals(false, generation.getUseCompactAssignment());
    //
    javaProject.setOption(DefaultCodeFormatterConstants.FORMATTER_INSERT_SPACE_BEFORE_ASSIGNMENT_OPERATOR,
            JavaCore.DO_NOT_INSERT);
    assertEquals(true, generation.getUseCompactAssignment());
}

From source file:org.eclipse.wb.tests.designer.core.util.ast.AstEditorTest.java

License:Open Source License

public void test_ASTCG_getMethodBraceSeparator() throws Exception {
    createTypeDeclaration_TestC("");
    AstCodeGeneration generation = m_lastEditor.getGeneration();
    ////from ww w  .j a v a2 s .  co  m
    assertSame(" ", generation.getMethodBraceSeparator("\t\t"));
    //
    IJavaProject javaProject = m_lastEditor.getModelUnit().getJavaProject();
    javaProject.setOption(DefaultCodeFormatterConstants.FORMATTER_BRACE_POSITION_FOR_METHOD_DECLARATION,
            DefaultCodeFormatterConstants.NEXT_LINE);
    assertEquals(Expectations.get("\r\n\t", new StrValue("flanker-desktop", "\n\t"),
            new StrValue("scheglov-macpro", "\n\t")), generation.getMethodBraceSeparator("\t"));
    assertEquals(Expectations.get("\r\n\t\t", new StrValue("flanker-desktop", "\n\t\t"),
            new StrValue("scheglov-macpro", "\n\t\t")), generation.getMethodBraceSeparator("\t\t"));
}

From source file:org.eclipse.wb.tests.designer.core.util.ast.AstEditorTest.java

License:Open Source License

/**
 * If project configured to consider {@link JavaCore#COMPILER_PB_NULL_REFERENCE} as error, we may
 * fail, because we declare {@link Object} variables as <code>null</code>.
 *//*  w w  w  .  j  a  va 2  s . com*/
public void test_ASTParser_parseExpression_warning_nullReference() throws Exception {
    createTypeDeclaration_Test("public class Test {", "  public Test() {", "    Object var = new Object();",
            "    // marker", "  }", "}");
    // configure IJavaProject to handle warning as error
    {
        IJavaProject javaProject = m_lastEditor.getModelUnit().getJavaProject();
        javaProject.setOption(JavaCore.COMPILER_PB_NULL_REFERENCE, "error");
    }
    // parse expression
    try {
        int position = m_lastEditor.indexOf("// marker");
        String expressionSource = "var.hashCode()";
        check_ASTParser_parseExpression(position, expressionSource);
    } finally {
        do_projectDispose();
    }
}

From source file:org.eclipse.wb.tests.designer.core.util.ast.AstEditorTest.java

License:Open Source License

/**
 * If project configured to consider {@link JavaCore#COMPILER_PB_UNUSED_IMPORT} as error, we
 * should ignore this.//from w ww  . j  a  v a 2s.  c om
 */
public void test_ASTParser_parseExpression_warning_unusedImport() throws Exception {
    createTypeDeclaration_Test("import java.util.List;", "public class Test {", "  public Test() {",
            "    // marker", "  }", "}");
    // configure IJavaProject to handle warning as error
    {
        IJavaProject javaProject = m_lastEditor.getModelUnit().getJavaProject();
        javaProject.setOption(JavaCore.COMPILER_PB_UNUSED_IMPORT, "error");
    }
    // parse expression
    try {
        int position = m_lastEditor.indexOf("// marker");
        String expressionSource = "12345";
        check_ASTParser_parseExpression(position, expressionSource);
    } finally {
        do_projectDispose();
    }
}

From source file:org.eclipse.wb.tests.designer.core.util.ast.AstEditorTest.java

License:Open Source License

/**
 * When build context for parsing, "@Override" annotations should be included to prevent
 * {@link JavaCore#COMPILER_PB_MISSING_OVERRIDE_ANNOTATION} warning as error.
 *///w ww.  j  a  va 2  s .  co m
public void test_ASTParser_parseExpression_warning_useOverride() throws Exception {
    setFileContentSrc("test/Test_0.java",
            getSource("package test;", "public class Test_0 {", "  public void fooBar() {", "  }", "}"));
    createTypeDeclaration("test", "Test.java", getSource("package test;", "public class Test extends Test_0 {",
            "  @Override", "  public void fooBar() {", "    // marker", "  }", "}"));
    // configure IJavaProject to handle warning as error
    {
        IJavaProject javaProject = m_lastEditor.getModelUnit().getJavaProject();
        javaProject.setOption(JavaCore.COMPILER_PB_MISSING_OVERRIDE_ANNOTATION, "error");
    }
    // parse expression
    try {
        int position = m_lastEditor.indexOf("// marker");
        String expressionSource = "12345";
        check_ASTParser_parseExpression(position, expressionSource);
    } finally {
        do_projectDispose();
    }
}