<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!--
  Licensed to the Apache Software Foundation (ASF) under one
  or more contributor license agreements.  See the NOTICE file
  distributed with this work for additional information
  regarding copyright ownership.  The ASF licenses this file
  to you under the Apache License, Version 2.0 (the
  "License"); you may not use this file except in compliance
  with the License.  You may obtain a copy of the License at

      http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.
  -->

<process name="agregator-coord16" xmlns="uri:falcon:process:0.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

       <clusters>
        <cluster name="corp">
           <validity end="2011-01-03T03:00Z" start="2010-01-02T01:00Z" />  
        </cluster>
      </clusters>
	<parallel>1</parallel>
	<order>FIFO</order>
       <frequency>minutes(5)</frequency>
	<timezone>UTC</timezone>
	
	<inputs>
		<input end="now(0,0)" start="now(0,-20)"
			feed="raaw-logs16" name="inputData"/>
	</inputs>
	<outputs>
		<output instance="now(0,0)" feed="agregated-logs16"
			name="outputData" />
	</outputs>
	<properties>
		<property name="queueName" value="default"/>
	</properties>
    <workflow path="/examples/apps/aggregator"/>
	<retry policy="periodic" delay="minutes(3)" attempts="3" />

</process>

