當前位置: 首頁>>代碼示例>>Java>>正文


Java OutputAttributeAggregator類代碼示例

本文整理匯總了Java中org.wso2.siddhi.core.query.selector.attribute.handler.OutputAttributeAggregator的典型用法代碼示例。如果您正苦於以下問題:Java OutputAttributeAggregator類的具體用法?Java OutputAttributeAggregator怎麽用?Java OutputAttributeAggregator使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


OutputAttributeAggregator類屬於org.wso2.siddhi.core.query.selector.attribute.handler包,在下文中一共展示了OutputAttributeAggregator類的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: process

import org.wso2.siddhi.core.query.selector.attribute.handler.OutputAttributeAggregator; //導入依賴的package包/類
protected Object process(AtomicEvent event, OutputAttributeAggregator outputAttributeAggregator) {
    if (size > 1) {
        Object[] data = new Object[expressionExecutors.size()];
        for (int i = 0, size = data.length; i < size; i++) {
            data[i] = expressionExecutors.get(i).execute(event);
        }
        if (event instanceof RemoveStream) {
            return outputAttributeAggregator.processRemove(data);
        } else {
            return outputAttributeAggregator.processAdd(data);
        }
    } else {
        if (event instanceof RemoveStream) {
            return outputAttributeAggregator.processRemove(expressionExecutors.get(0).execute(event));
        } else {
            return outputAttributeAggregator.processAdd(expressionExecutors.get(0).execute(event));
        }
    }
}
 
開發者ID:redBorder,項目名稱:rb-bi,代碼行數:20,代碼來源:AbstractAggregationAttributeProcessor.java

示例2: createSumAggregator

import org.wso2.siddhi.core.query.selector.attribute.handler.OutputAttributeAggregator; //導入依賴的package包/類
public static OutputAttributeAggregator createSumAggregator(Attribute.Type[] types) {
    if (types.length > 1) {
        throw new QueryCreationException("Sum can only have one parameter");
    }
    Attribute.Type type = types[0];
    switch (type) {
        case STRING:
            throw new OperationNotSupportedException("Sum not supported for string");
        case INT:
            return new SumOutputAttributeAggregatorInt();
        case LONG:
            return new SumOutputAttributeAggregatorLong();
        case FLOAT:
            return new SumOutputAttributeAggregatorFloat();
        case DOUBLE:
            return new SumOutputAttributeAggregatorDouble();
        case BOOL:
            throw new OperationNotSupportedException("Sum not supported for bool");
    }
    throw new OperationNotSupportedException("Sum not supported for " + type);
}
 
開發者ID:redBorder,項目名稱:rb-bi,代碼行數:22,代碼來源:OutputAttributeHandlerParser.java

示例3: createAvgAggregator

import org.wso2.siddhi.core.query.selector.attribute.handler.OutputAttributeAggregator; //導入依賴的package包/類
public static OutputAttributeAggregator createAvgAggregator(Attribute.Type[] types) {
    if (types.length > 1) {
        throw new QueryCreationException("Avg can only have one parameter");
    }
    Attribute.Type type = types[0];
    switch (type) {
        case STRING:
            throw new OperationNotSupportedException("Avg not supported for string");
        case INT:
            return new AvgOutputAttributeAggregatorInt();
        case LONG:
            return new AvgOutputAttributeAggregatorLong();
        case FLOAT:
            return new AvgOutputAttributeAggregatorFloat();
        case DOUBLE:
            return new AvgOutputAttributeAggregatorDouble();
        case BOOL:
            throw new OperationNotSupportedException("Avg not supported for bool");
    }
    throw new OperationNotSupportedException("Avg not supported for " + type);
}
 
開發者ID:redBorder,項目名稱:rb-bi,代碼行數:22,代碼來源:OutputAttributeHandlerParser.java

示例4: createMaxAggregator

import org.wso2.siddhi.core.query.selector.attribute.handler.OutputAttributeAggregator; //導入依賴的package包/類
public static OutputAttributeAggregator createMaxAggregator(Attribute.Type[] types) {
    if (types.length > 1) {
        throw new QueryCreationException("Max can only have one parameter");
    }
    Attribute.Type type = types[0];
    switch (type) {
        case STRING:
            throw new OperationNotSupportedException("Max not supported for string");
        case INT:
            return new MaxOutputAttributeAggregatorInt();
        case LONG:
            return new MaxOutputAttributeAggregatorLong();
        case FLOAT:
            return new MaxOutputAttributeAggregatorFloat();
        case DOUBLE:
            return new MaxOutputAttributeAggregatorDouble();
        case BOOL:
            throw new OperationNotSupportedException("Max not supported for bool");
    }
    throw new OperationNotSupportedException("Max not supported for " + type);
}
 
開發者ID:redBorder,項目名稱:rb-bi,代碼行數:22,代碼來源:OutputAttributeHandlerParser.java

示例5: createMinAggregator

import org.wso2.siddhi.core.query.selector.attribute.handler.OutputAttributeAggregator; //導入依賴的package包/類
public static OutputAttributeAggregator createMinAggregator(Attribute.Type[] types) {
    if (types.length > 1) {
        throw new QueryCreationException("Min can only have one parameter");
    }
    Attribute.Type type = types[0];
    switch (type) {
        case STRING:
            throw new OperationNotSupportedException("Min not supported for string");
        case INT:
            return new MinOutputAttributeAggregatorInt();
        case LONG:
            return new MinOutputAttributeAggregatorLong();
        case FLOAT:
            return new MinOutputAttributeAggregatorFloat();
        case DOUBLE:
            return new MinOutputAttributeAggregatorDouble();
        case BOOL:
            throw new OperationNotSupportedException("Min not supported for bool");
    }
    throw new OperationNotSupportedException("Min not supported for " + type);
}
 
開發者ID:redBorder,項目名稱:rb-bi,代碼行數:22,代碼來源:OutputAttributeHandlerParser.java

示例6: process

import org.wso2.siddhi.core.query.selector.attribute.handler.OutputAttributeAggregator; //導入依賴的package包/類
protected Object process(StreamEvent event, OutputAttributeAggregator outputAttributeAggregator) {
    if (size > 1) {
        Object[] data = new Object[expressionExecutors.size()];
        for (int i = 0, size = data.length; i < size; i++) {
            data[i] = expressionExecutors.get(i).execute(event);
        }
        if (event instanceof RemoveStream) {
            return outputAttributeAggregator.processRemove(data);
        } else {
            return outputAttributeAggregator.processAdd(data);
        }
    } else {
        if (event instanceof RemoveStream) {
            return outputAttributeAggregator.processRemove(expressionExecutors.get(0).execute(event));
        } else {
            return outputAttributeAggregator.processAdd(expressionExecutors.get(0).execute(event));
        }
    }
}
 
開發者ID:sacjaya,項目名稱:siddhi-3,代碼行數:20,代碼來源:AbstractAggregationAttributeProcessor.java

示例7: currentState

import org.wso2.siddhi.core.query.selector.attribute.handler.OutputAttributeAggregator; //導入依賴的package包/類
public Object[] currentState() {
    Map<String, OutputAttributeAggregator> tempMap = new HashMap<String, OutputAttributeAggregator>();
    for (Map.Entry<String, OutputAttributeAggregator> entry : distributedAggregatorMap.entrySet()) {
        tempMap.put(entry.getKey(), entry.getValue());
    }
    //todo may be we throw an error saying we don't support for distributed cases
    return new Object[]{tempMap};
}
 
開發者ID:redBorder,項目名稱:rb-bi,代碼行數:9,代碼來源:DistributedGroupByAggregationAttributeProcessor.java

示例8: unlock

import org.wso2.siddhi.core.query.selector.attribute.handler.OutputAttributeAggregator; //導入依賴的package包/類
@Override
    public synchronized void unlock() {
        if (lockedAcquired) {
            for (Map.Entry<String, OutputAttributeAggregator> entry : tempAggregatorMap.entrySet()) {
                distributedAggregatorMap.putAsync(entry.getKey(), entry.getValue());
            }
            tempAggregatorMap.clear();
            lockedAcquired = false;
//            distributedAggregatorMap.unlockMap();
            lock.unlock();
        }
    }
 
開發者ID:redBorder,項目名稱:rb-bi,代碼行數:13,代碼來源:DistributedGroupByAggregationAttributeProcessor.java

示例9: currentState

import org.wso2.siddhi.core.query.selector.attribute.handler.OutputAttributeAggregator; //導入依賴的package包/類
@Override
protected Object[] currentState() {
    distributedAggregatorMap.lock(elementId);
    OutputAttributeAggregator currentOutputAttributeAggregator = (OutputAttributeAggregator) distributedAggregatorMap.get(elementId);
    Object[] data = new Object[]{currentOutputAttributeAggregator};
    distributedAggregatorMap.unlock(elementId);
    return data;
}
 
開發者ID:redBorder,項目名稱:rb-bi,代碼行數:9,代碼來源:DistributedAggregationAttributeProcessor.java

示例10: lock

import org.wso2.siddhi.core.query.selector.attribute.handler.OutputAttributeAggregator; //導入依賴的package包/類
@Override
public synchronized void lock() {
    distributedAggregatorMap.lock(elementId);
    lockedAcquired = true;
    try {
        outputAttributeAggregator = (OutputAttributeAggregator) distributedAggregatorMap.getAsync(elementId).get();
    } catch (Exception e) {
        log.error(e);
    }
}
 
開發者ID:redBorder,項目名稱:rb-bi,代碼行數:11,代碼來源:DistributedAggregationAttributeProcessor.java

示例11: process

import org.wso2.siddhi.core.query.selector.attribute.handler.OutputAttributeAggregator; //導入依賴的package包/類
public synchronized Object process(AtomicEvent event, String key) {
    OutputAttributeAggregator currentOutputAttributeAggregator = aggregatorMap.get(key);
    if (currentOutputAttributeAggregator == null) {
        currentOutputAttributeAggregator = sampleOutputAttributeAggregator.newInstance();
        siddhiContext.addEternalReferencedHolder(currentOutputAttributeAggregator);
        aggregatorMap.put(key, currentOutputAttributeAggregator);
    }
    return process(event, currentOutputAttributeAggregator);
}
 
開發者ID:redBorder,項目名稱:rb-bi,代碼行數:10,代碼來源:GroupByAttributeAggregatorProcessor.java

示例12: createAttributeAggregator

import org.wso2.siddhi.core.query.selector.attribute.handler.OutputAttributeAggregator; //導入依賴的package包/類
@Override
public OutputAttributeAggregator createAttributeAggregator(Attribute.Type[] types) {
    return OutputAttributeHandlerParser.createMinAggregator(types);
}
 
開發者ID:redBorder,項目名稱:rb-bi,代碼行數:5,代碼來源:MinOutputAttributeAggregatorFactory.java

示例13: createAttributeAggregator

import org.wso2.siddhi.core.query.selector.attribute.handler.OutputAttributeAggregator; //導入依賴的package包/類
public OutputAttributeAggregator createAttributeAggregator(Attribute.Type[] types){
    return OutputAttributeHandlerParser.createAvgAggregator(types);
}
 
開發者ID:redBorder,項目名稱:rb-bi,代碼行數:4,代碼來源:AvgOutputAttributeAggregatorFactory.java

示例14: createAttributeAggregator

import org.wso2.siddhi.core.query.selector.attribute.handler.OutputAttributeAggregator; //導入依賴的package包/類
@Override
public OutputAttributeAggregator createAttributeAggregator(Attribute.Type[] types) {
    return OutputAttributeHandlerParser.createMaxAggregator(types);
}
 
開發者ID:redBorder,項目名稱:rb-bi,代碼行數:5,代碼來源:MaxOutputAttributeAggregatorFactory.java

示例15: createAttributeAggregator

import org.wso2.siddhi.core.query.selector.attribute.handler.OutputAttributeAggregator; //導入依賴的package包/類
public OutputAttributeAggregator createAttributeAggregator(Attribute.Type[] types) {
    return OutputAttributeHandlerParser.createCountAggregator(types);
}
 
開發者ID:redBorder,項目名稱:rb-bi,代碼行數:4,代碼來源:CountOutputAttributeAggregatorFactory.java


注:本文中的org.wso2.siddhi.core.query.selector.attribute.handler.OutputAttributeAggregator類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。