﻿<?xml version="1.0"?>
<objects xmlns="http://www.springframework.net"
				 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
				 xmlns:quartz="http://www.opensymphony.com/quartz/JobSchedulingData"
				 xsi:schemaLocation="http://www.springframework.net http://www.springframework.net/xsd/spring-objects.xsd" >

  <!--Import specific Export configurations -->
  <import resource="file://~/Config/Export-ControlDevice.config"/>
  <import resource="file://~/Config/Export-EmissionUnit.config"/>
  <import resource="file://~/Config/Export-ReleasePoint.config"/>
  <import resource="file://~/Config/Export-UnitProcess.config"/>
  
  <object id="exportService" type="Sleis.Service.ExportService" parent="baseService" init-method="Init">
    <property name="DataSetData" ref="dataSetData"/>
    <property name="ExportGroups">
      <list element-type="Sleis.Export.ExportGroup">
        <ref object="PublicControlDeviceExport" />
        <ref object="AgencyControlDeviceExport"/>
        <ref object="MasterControlDeviceExport"/>        
        <ref object="PublicEmissionUnitExport"/>
        <ref object="AgencyEmissionUnitExport"/>
        <ref object="MasterEmissionUnitExport"/>
        <ref object="PublicReleasePointExport"/>
        <ref object="AgencyReleasePointExport"/>
        <ref object="MasterReleasePointExport"/>        
        <ref object="PublicUnitProcessExport"/>
        <ref object="AgencyUnitProcessExport"/>
        <ref object="MasterUnitProcessExport"/>
       
      </list>
    </property>
  </object>
  <!-- Example Export Object-->
  <!--
  <object id="AgencyControlDeviceExport" type="Sleis.Export.ExportGroup">
    <property name="Name" value="ControlDevice"> Parameter to get the export of file groups 
    </property>
    <property name="Queries"><dictionary of queries to include in export. Each query results in a single csv file
      <dictionary key-type="System.String" value-type="System.String">
        Key is the file name..... Value is the actual SQL Select Statement
        <entry key="Agency_ControlDevice" value="SELECT
	                                          cd.CTRL_DEVC_IDEN AS CTRL_DEVC_IDEN,
	                                          cd.CTRL_DEVC_DESC AS CTRL_DEVC_DESC,
	                                          cds.CTRL_DEVC_STAT_DESC AS CTRL_DEVC_STATUS,
	                                          cd.CTRL_DEVC_STAT_CD_DATE AS CTRL_DEVC_STATUS_DATE,
	                                          cm.CTRL_MEAS_DESC AS CTRL_MEAS_DESC,
	                                          cd.CTRL_DEVC_CMNT AS CTRL_DEVC_CMNT
                                          FROM
	                                          M_CTRL_DEVC cd 
	                                          INNER JOIN M_FAC_SITE fs ON cd.FAC_SITE_ID = fs.FAC_SITE_ID
	                                          INNER JOIN M_AGN_RPT ar ON fs.AGN_RPT_ID = ar.AGN_RPT_ID
	
	                                          LEFT JOIN A_CTRL_DEVC_STAT cds ON cd.A_CTRL_DEVC_STAT_CD = cds.A_CTRL_DEVC_STAT_CD
	                                          LEFT JOIN E_CTRL_MEAS cm ON cd.E_CTRL_MEAS_CD = cm.E_CTRL_MEAS_CD
                                          WHERE
	                                          ar.AGN_RPT_ID = :reportId 
                                          ORDER BY
	                                          cd.CTRL_DEVC_IDEN ASC
	                                      " />
      </dictionary>
    </property>
  </object>
 -->                                       
<!-- OLD EXPORT LOGIC-->
  <!--<property name="FieldPropertyNameMapping">
		<dictionary key-type="System.String"
						value-type="Sleis.Export.FieldPropertyMapping">
		  <entry key="ReleasePoint_IdentifierField" value-ref="fieldPropertyMapping1"/>
		  <entry key="ReleasePoint_TypeCodeField"  value-ref="fieldPropertyMapping2" />
		  <entry key="ReleasePoint_DescriptionField" value-ref="fieldPropertyMapping3" />
		  <entry key="ReleasePoint_StatusField" value-ref="fieldPropertyMapping4" />
		  <entry key="ReleasePoint_StatusDateField" value-ref="fieldPropertyMapping5" />
		  <entry key="ReleasePoint_StackHeightField" value-ref="fieldPropertyMapping6" />
		  <entry key="ReleasePoint_StackDiameterField" value-ref="fieldPropertyMapping7" />
		  <entry key="LocationUtmXField" value-ref="fieldPropertyMappingLocation8" />
		  <entry key="LocationUtmYField" value-ref="fieldPropertyMappingLocation9" />
		  <entry key="LocationUtmZField" value-ref="fieldPropertyMappingLocation10" />
		  <entry key="ReleasePoint_CommentsField" value-ref="fieldPropertyMapping11" />
		  <entry key="ReleasePoint_FugitiveHeightField" value-ref="fieldPropertyMapping12" />
		  <entry key="ReleasePoint_FugitiveLengthField" value-ref="fieldPropertyMapping13" />
		  <entry key="ReleasePoint_FugitiveWidthField" value-ref="fieldPropertyMapping14" />
		  <entry key="ReleasePoint_FugitiveAngleField" value-ref="fieldPropertyMapping15" />
		  <entry key="ReleasePoint_ExitGasTempField" value-ref="fieldPropertyMapping16" />
		  <entry key="ReleasePoint_ExitGasFlowRate" value-ref="fieldPropertyMapping17" />
		  <entry key="ReleasePoint_ExitGasVelocityField" value-ref="fieldPropertyMapping18" />
		  <entry key="ReleasePoint_FenceLineDistanceField" value-ref="fieldPropertyMapping19" />
		  <entry key="ReleasePoint_RelatedUnitProcessesField" value-ref="fieldPropertyMapping20" />
		  <entry key="ReleasePoint_UsesFacilityCoordinates" value-ref="fieldPropertyMapping21" />
		  <entry key="LocationCollectionDateField" value-ref="fieldPropertyMapping22" />
		  <entry key="LocationCollectionMethodField" value-ref="fieldPropertyMapping23" />
		  <entry key="LocationLatitudeField" value-ref="fieldPropertyMapping24" />
		  <entry key="LocationLongitudeField" value-ref="fieldPropertyMapping25" />
		  <entry key="LocationReferencePointField" value-ref="fieldPropertyMapping26" />
		  <entry key="LocationReferenceSystemField" value-ref="fieldPropertyMapping27" />
		</dictionary>
	 </property>
   <object id="fieldPropertyMapping1" type="Sleis.Export.FieldPropertyMapping">
	 <constructor-arg name="sortOrder" value="1" />
	 <constructor-arg name="propertyName" value="Identifier" />
	 <constructor-arg name="colName" value="Indentifier" />
	 
  </object>
  <object id="fieldPropertyMapping2" type="Sleis.Export.FieldPropertyMapping">
	 <constructor-arg name="sortOrder" value="2" />
	 <constructor-arg name="propertyName" value="TypeCode" />
	 <constructor-arg name="colName" value="Type" />
	
  </object>
  <object id="fieldPropertyMapping3" type="Sleis.Export.FieldPropertyMapping">
	 <constructor-arg name="sortOrder" value="3" />
	 <constructor-arg name="propertyName" value="Description" />
	 <constructor-arg name="colName" value="Description" />
  </object>
  <object id="fieldPropertyMapping4" type="Sleis.Export.FieldPropertyMapping">
	 <constructor-arg name="sortOrder" value="4" />
	 <constructor-arg name="propertyName" value="StatusCode" />
	 <constructor-arg name="colName" value="Status" />
	 
  </object>
  <object id="fieldPropertyMapping5" type="Sleis.Export.FieldPropertyMapping">
	 <constructor-arg name="sortOrder" value="5" />
	 <constructor-arg name="propertyName" value="StatusAsOfDate" />
	 <constructor-arg name="colName" value="Status Date" />
	
  </object>
  <object id="fieldPropertyMapping6" type="Sleis.Export.FieldPropertyMapping">
	 <constructor-arg name="sortOrder" value="6" />
	 <constructor-arg name="propertyName" value="StackHeightMeasurement:StackHeightUomCode" />
	 <constructor-arg name="colName" value="Stack Height" />
  </object>
  <object id="fieldPropertyMapping7" type="Sleis.Export.FieldPropertyMapping">
	 <constructor-arg name="sortOrder" value="7" />
	 <constructor-arg name="propertyName" value="StackDiameterMeasurement:StackDiameterUomCode" />
	 <constructor-arg name="colName" value="Stack Diameter" />
  </object>
  <object id="fieldPropertyMappingLocation8" type="Sleis.Export.FieldPropertyMapping">
	 <constructor-arg name="sortOrder" value="19" />
	 <constructor-arg name="propertyName" value="Location.UtmEast" />
	 <constructor-arg name="colName" value="X" />
  </object>
  <object id="fieldPropertyMappingLocation9" type="Sleis.Export.FieldPropertyMapping">
	 <constructor-arg name="sortOrder" value="20" />
	 <constructor-arg name="propertyName" value="Location.UtmNorth" />
	 <constructor-arg name="colName" value="Y" />
  </object>
  <object id="fieldPropertyMappingLocation10" type="Sleis.Export.FieldPropertyMapping">
	 <constructor-arg name="sortOrder" value="21" />
	 <constructor-arg name="propertyName" value="Location.UtmZone" />
	 <constructor-arg name="colName" value="Zone" />
  </object>
  <object id="fieldPropertyMapping11" type="Sleis.Export.FieldPropertyMapping">
	 <constructor-arg name="sortOrder" value="27" />
	 <constructor-arg name="propertyName" value="Comments" />
	 <constructor-arg name="colName" value="Comments" />
  </object>
  <object id="fieldPropertyMapping12" type="Sleis.Export.FieldPropertyMapping">
	 <constructor-arg name="sortOrder" value="8" />
	 <constructor-arg name="propertyName" value="FugitiveHeight:FugitiveHeightUom" />
	 <constructor-arg name="colName" value="Fugitive Height" />
  </object>
  <object id="fieldPropertyMapping13" type="Sleis.Export.FieldPropertyMapping">
	 <constructor-arg name="sortOrder" value="9" />
	 <constructor-arg name="propertyName" value="FugitiveLength:FugitiveLengthUom" />
	 <constructor-arg name="colName" value="Fugitive Length" />
  </object>
  <object id="fieldPropertyMapping14" type="Sleis.Export.FieldPropertyMapping">
	 <constructor-arg name="sortOrder" value="10" />
	 <constructor-arg name="propertyName" value="FugitiveWidth:FugitiveWidthUom" />
	 <constructor-arg name="colName" value="Fugitive Width" />
  </object>
  <object id="fieldPropertyMapping15" type="Sleis.Export.FieldPropertyMapping">
	 <constructor-arg name="sortOrder" value="11" />
	 <constructor-arg name="propertyName" value="FugitiveAngle" />
	 <constructor-arg name="colName" value="Fugitive Angle" />
  </object>
  <object id="fieldPropertyMapping16" type="Sleis.Export.FieldPropertyMapping">
	 <constructor-arg name="sortOrder" value="12" />
	 <constructor-arg name="propertyName" value="GasTemp" />
	 <constructor-arg name="colName" value="Exit Gas Temp" />
  </object>
  <object id="fieldPropertyMapping17" type="Sleis.Export.FieldPropertyMapping">
	 <constructor-arg name="sortOrder" value="13" />
	 <constructor-arg name="propertyName" value="GasFlowRate:GasFlowRateUomCode" />
	 <constructor-arg name="colName" value="Exit Gas Flow Rate" />
  </object>
  <object id="fieldPropertyMapping18" type="Sleis.Export.FieldPropertyMapping">
	 <constructor-arg name="sortOrder" value="14" />
	 <constructor-arg name="propertyName" value="GasVel:GasVelUomCode" />
	 <constructor-arg name="colName" value="Exit Gas Velocity" />
  </object>
  <object id="fieldPropertyMapping19" type="Sleis.Export.FieldPropertyMapping">
	 <constructor-arg name="sortOrder" value="15" />
	 <constructor-arg name="propertyName" value="FenceLineDistance:FenceLineDistanceUomCode" />
	 <constructor-arg name="colName" value="Fence Line Distance" />
  </object>
  <object id="fieldPropertyMapping20" type="Sleis.Export.FieldPropertyMapping">
	 <constructor-arg name="sortOrder" value="26" />
	 <constructor-arg name="propertyName" value="RelatedUnitProcesses" />
	 <constructor-arg name="colName" value="Related Unit Processes" />
	 <constructor-arg name="childPropertyName" value="Identifier" />
  </object>
  <object id="fieldPropertyMapping21" type="Sleis.Export.FieldPropertyMapping">
	 <constructor-arg name="sortOrder" value="16" />
	 <constructor-arg name="propertyName" value="UsesFacilitySiteLocation" />
	 <constructor-arg name="colName" value="Release point utilizes facility coordinates" />
  </object>
  <object id="fieldPropertyMapping22" type="Sleis.Export.FieldPropertyMapping">
	 <constructor-arg name="sortOrder" value="26" />
	 <constructor-arg name="propertyName" value="Location.CollectionTime" />
	 <constructor-arg name="colName" value="Data Collection Date" />
  </object>
  <object id="fieldPropertyMapping23" type="Sleis.Export.FieldPropertyMapping">
	 <constructor-arg name="sortOrder" value="22" />
	 <constructor-arg name="propertyName" value="Location.CollectionMethodCode" />
	 <constructor-arg name="colName" value="Collection Method" />
  </object>
  <object id="fieldPropertyMapping24" type="Sleis.Export.FieldPropertyMapping">
	 <constructor-arg name="sortOrder" value="17" />
	 <constructor-arg name="propertyName" value="Location.Latitude" />
	 <constructor-arg name="colName" value="Latitude" />
  </object>
  <object id="fieldPropertyMapping25" type="Sleis.Export.FieldPropertyMapping">
	 <constructor-arg name="sortOrder" value="18" />
	 <constructor-arg name="propertyName" value="Location.Longitude" />
	 <constructor-arg name="colName" value="Longitude" />
  </object>
  <object id="fieldPropertyMapping26" type="Sleis.Export.FieldPropertyMapping">
	 <constructor-arg name="sortOrder" value="24" />
	 <constructor-arg name="propertyName" value="Location.ReferencePointCode" />
	 <constructor-arg name="colName" value="Geographic Reference Point" />
  </object>
  <object id="fieldPropertyMapping27" type="Sleis.Export.FieldPropertyMapping">
	 <constructor-arg name="sortOrder" value="25" />
	 <constructor-arg name="propertyName" value="Location.ReferenceSystemCode" />
	 <constructor-arg name="colName" value="Geodetic Reference System" />
  </object>
  -->
  
  
</objects>
