Package org.mule.module.db.internal.domain.query

Examples of org.mule.module.db.internal.domain.query.QueryTemplate


    @Test
    public void detectsStoredProcedureAssignment() throws Exception
    {
        String sql = "{ :out = call getTestRecords() } ";

        QueryTemplate queryTemplate = parser.parse(sql);

        assertThat(queryTemplate.getType(), equalTo(QueryType.STORE_PROCEDURE_CALL));
        assertThat(queryTemplate.getSqlText(), equalTo("{ ? = call getTestRecords() }"));
        assertThat(queryTemplate.getParams().size(), equalTo(1));

        QueryParam param1 = queryTemplate.getParams().get(0);
        assertThat(param1.getName(), equalTo("out"));
        assertThat(param1.getType(), equalTo(UnknownDbType.getInstance()));
    }
View Full Code Here


    @Test
    public void definesUpdate() throws Exception
    {
        Object queryTemplateBean = muleContext.getRegistry().get("testUpdate");
        assertTrue(queryTemplateBean instanceof QueryTemplate);
        QueryTemplate queryTemplate = (QueryTemplate) queryTemplateBean;
        assertEquals(QueryType.UPDATE, queryTemplate.getType());
        assertEquals("update PLANET set NAME='Mercury' where ID=?", queryTemplate.getSqlText());
        assertEquals(1, queryTemplate.getInputParams().size());
        InputQueryParam param1 = queryTemplate.getInputParams().get(0);
        assertEquals(UnknownDbType.getInstance(), param1.getType());
        assertEquals("id", param1.getName());
        assertEquals("0", param1.getValue());
        assertEquals(1, param1.getIndex());
    }
View Full Code Here

        doIncompleteStoredProcedureAssingmentTest("{ a = call getTestRecords() } ");
    }

    private void doIncompleteStoredProcedureAssingmentTest(String sql)
    {
        QueryTemplate queryTemplate = parser.parse(sql);
        assertThat(queryTemplate.getType(), equalTo(QueryType.DDL));
    }
View Full Code Here

        doStoredProcedureParsingTest("{call getTestRecords() } ");
    }

    private void doStoredProcedureParsingTest(String sql)
    {
        QueryTemplate queryTemplate = parser.parse(sql);
        assertEquals(QueryType.STORE_PROCEDURE_CALL, queryTemplate.getType());
        assertEquals(sql.trim(), queryTemplate.getSqlText());
        assertEquals(0, queryTemplate.getInputParams().size());
    }
View Full Code Here

    @Test
    public void usesDynamicQuery() throws Exception
    {
        Object queryTemplateBean = muleContext.getRegistry().get("testDynamicQuery");
        assertTrue(queryTemplateBean instanceof QueryTemplate);
        QueryTemplate queryTemplate = (QueryTemplate) queryTemplateBean;
        assertTrue(queryTemplate.isDynamic());
        assertEquals("SELECT * FROM PLANET WHERE POSITION = #[position]", queryTemplate.getSqlText());
        assertEquals(0, queryTemplate.getInputParams().size());
    }
View Full Code Here

    @Test
    public void parsesQuestionMarkParam() throws Exception
    {
        String sql = "SELECT * FROM PLANET WHERE POSITION = ?";
        QueryTemplate queryTemplate = parser.parse(sql);
        assertEquals(QueryType.SELECT, queryTemplate.getType());
        assertEquals(sql, queryTemplate.getSqlText());
        assertEquals(1, queryTemplate.getInputParams().size());
        InputQueryParam param1 = queryTemplate.getInputParams().get(0);
        assertEquals(UnknownDbType.getInstance(), param1.getType());
    }
View Full Code Here

    @Test
    public void usesDynamicQueryWithPlaceholder() throws Exception
    {
        Object queryTemplateBean = muleContext.getRegistry().get("testDynamicPlaceholderQuery");
        assertTrue(queryTemplateBean instanceof QueryTemplate);
        QueryTemplate queryTemplate = (QueryTemplate) queryTemplateBean;
        assertTrue(queryTemplate.isDynamic());
        assertEquals("SELECT * FROM PLANET WHERE POSITION = #[position]", queryTemplate.getSqlText());
        assertEquals(0, queryTemplate.getInputParams().size());
    }
View Full Code Here

    }

    @Test
    public void parsesNamedParam() throws Exception
    {
        QueryTemplate queryTemplate = parser.parse("update PLANET set NAME='Mercury' where ID= :planetId");
        assertEquals(QueryType.UPDATE, queryTemplate.getType());
        assertEquals("update PLANET set NAME='Mercury' where ID= ?", queryTemplate.getSqlText());
        assertEquals(1, queryTemplate.getInputParams().size());
        InputQueryParam param1 = queryTemplate.getInputParams().get(0);
        assertEquals(UnknownDbType.getInstance(), param1.getType());
        assertEquals("planetId", param1.getName());
        assertNull(param1.getValue());
    }
View Full Code Here

    @Test
    public void usesNullDefaultParamValue() throws Exception
    {
        Object queryTemplateBean = muleContext.getRegistry().get("testNullParamsQuery");

        QueryTemplate queryTemplate = (QueryTemplate) queryTemplateBean;

        assertFalse(queryTemplate.isDynamic());
        assertEquals("SELECT * FROM PLANET WHERE POSITION = ?", queryTemplate.getSqlText());
        assertEquals(1, queryTemplate.getInputParams().size());
        InputQueryParam param1 = queryTemplate.getInputParams().get(0);
        assertEquals(UnknownDbType.getInstance(), param1.getType());
        assertEquals("position", param1.getName());
        assertEquals(null, param1.getValue());
        assertEquals(1, param1.getIndex());
    }
View Full Code Here

    @Test
    public void overridesDisorderedParams() throws Exception
    {
        Object queryTemplateBean = muleContext.getRegistry().get("disorderedParams");
        assertTrue(queryTemplateBean instanceof QueryTemplate);
        QueryTemplate queryTemplate = (QueryTemplate) queryTemplateBean;
        assertEquals(QueryType.SELECT, queryTemplate.getType());
        assertEquals("SELECT * FROM PLANET WHERE POSITION = ? AND NAME = ?", queryTemplate.getSqlText());
        assertEquals(2, queryTemplate.getInputParams().size());

        InputQueryParam param1 = queryTemplate.getInputParams().get(0);
        assertEquals(UnknownDbType.getInstance(), param1.getType());
        assertEquals("position", param1.getName());
        assertEquals("0", param1.getValue());
        assertEquals(1, param1.getIndex());

        InputQueryParam param2 = queryTemplate.getInputParams().get(1);
        assertEquals(UnknownDbType.getInstance(), param2.getType());
        assertEquals("name", param2.getName());
        assertEquals("mars", param2.getValue());
        assertEquals(2, param2.getIndex());
    }
View Full Code Here

TOP

Related Classes of org.mule.module.db.internal.domain.query.QueryTemplate

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.