EMMA Coverage Report (generated Tue Jul 10 07:50:22 IST 2012)
[all classes][org.wso2.siddhi.core.executor.conditon]

COVERAGE SUMMARY FOR SOURCE FILE [BooleanConditionExecutor.java]

nameclass, %method, %block, %line, %
BooleanConditionExecutor.java100% (1/1)100% (2/2)80%  (24/30)85%  (5.9/7)

COVERAGE BREAKDOWN BY CLASS AND METHOD

nameclass, %method, %block, %line, %
     
class BooleanConditionExecutor100% (1/1)100% (2/2)80%  (24/30)85%  (5.9/7)
BooleanConditionExecutor (ExpressionExecutor): void 100% (1/1)67%  (10/15)80%  (4/5)
execute (AtomicEvent): boolean 100% (1/1)93%  (14/15)96%  (1.9/2)

1/*
2*  Copyright (c) 2005-2010, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
3*
4*  WSO2 Inc. licenses this file to you under the Apache License,
5*  Version 2.0 (the "License"); you may not use this file except
6*  in compliance with the License.
7*  You may obtain a copy of the License at
8*
9*    http://www.apache.org/licenses/LICENSE-2.0
10*
11* Unless required by applicable law or agreed to in writing,
12* software distributed under the License is distributed on an
13* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14* KIND, either express or implied.  See the License for the
15* specific language governing permissions and limitations
16* under the License.
17*/
18package org.wso2.siddhi.core.executor.conditon;
19 
20import org.wso2.siddhi.core.event.AtomicEvent;
21import org.wso2.siddhi.core.exception.OperationNotSupportedException;
22import org.wso2.siddhi.core.executor.expression.ExpressionExecutor;
23import org.wso2.siddhi.query.api.definition.Attribute;
24 
25public class BooleanConditionExecutor implements ConditionExecutor {
26 
27    public ExpressionExecutor expressionExecutor;
28 
29    public BooleanConditionExecutor(ExpressionExecutor expressionExecutor) {
30        if (expressionExecutor.getType() != Attribute.Type.BOOL) {
31            throw new OperationNotSupportedException("Boolean condition cannot handle non boolean values");
32        }
33        this.expressionExecutor = expressionExecutor;
34    }
35 
36    public boolean execute(AtomicEvent event) {
37        Object value = expressionExecutor.execute(event);
38        return !(value == null) && (Boolean) value;
39    }
40}

[all classes][org.wso2.siddhi.core.executor.conditon]
EMMA 2.1.5320 (stable) (C) Vladimir Roubtsov