<dfm name='gsgStorage' namespace='http://www.genesyslab.com/modules/dfm/gsgStorage/v1'> 

	<protocols>
		<protocol type='http'>
			<params>
				<param name='timeout' expr='20'/>
			</params>
			<globalevents>
				<event name='done' mapping='200'/>
				<event name='error' mapping='0,400-510'/> 
			</globalevents>
		</protocol>
	</protocols>
	
	<connections> 
		<connection name='HTTP_simple' type='http' selectionmode='simple'> 
			<servers>
				<server name='gsg' host='demosrv' port='88' />     
			</servers>
		</connection> 			 			 		
	</connections> 
		
	<transports> 
		<transport name='HTTP_GET' conntype='HTTP_simple'>  
			<param name='method' expr='GET'/> 
			<param name='enctype' expr='application/x-www-form-urlencoded'/>
		</transport> 
		<transport name='HTTP_POST' conntype='HTTP_simple'>  
			<param name='method' expr='POST'/> 
			<param name='enctype' expr='application/x-www-form-urlencoded' />
		</transport>	
		<transport name='HTTP_DELETE' conntype='HTTP_simple'>  
			<param name='method' expr='DELETE'/> 
			<param name='enctype' expr='application/x-www-form-urlencoded'/>
		</transport>		
	</transports> 
	
	<actions> 		
 		<action name='create' transport='HTTP_POST' > 
			<overrides> 
				<param name='url' expr='/genesys/1/storage/${ttl}'/>
			</overrides>  
			<attributes> 
				<attribute name='ttl' type='Number' optional='false' />
				<attribute name='Key1' type='Expression' optional='true' mapping='parameter' /> 
				<attribute name='Key2' type='Expression' optional='true' mapping='parameter' /> 
				<attribute name='Key3' type='Expression' optional='true' mapping='parameter' /> 
			</attributes>
		</action> 
 		<action name='update' transport='HTTP_POST' > 
			<overrides> 
				<param name='url' expr='/genesys/1/storage/${id}/${ttl}'/>
			</overrides>  
			<attributes> 
				<attribute name='id' type='String' optional='false' /> 
				<attribute name='ttl' type='Number' optional='false' /> 
				<attribute name='Key1' type='Expression' optional='true' mapping='parameter' /> 
				<attribute name='Key2' type='Expression' optional='true' mapping='parameter' /> 
				<attribute name='Key3' type='Expression' optional='true' mapping='parameter' /> 
			</attributes>
		</action> 
 		<action name='queryAll' transport='HTTP_GET' > 
			<overrides> 
				<param name='url' expr='/genesys/1/storage/${id}'/>
			</overrides>  
			<attributes> 
				<attribute name='id' type='String' optional='false' /> 
			</attributes>
		</action> 
 		<action name='queryKey' transport='HTTP_GET' > 
			<overrides> 
				<param name='url' expr='/genesys/1/storage/${id}/${key}'/>
			</overrides>  
			<attributes> 
				<attribute name='id' type='String' optional='false' /> 
				<attribute name='key' type='String' optional='false' /> 
			</attributes>
		</action> 
 		<action name='queryBinaryKey' transport='HTTP_GET' > 
			<overrides> 
				<param name='url' expr='/genesys/1/storage/binary/${id}/${key}'/>
			</overrides>  
			<attributes> 
				<attribute name='id' type='String' optional='false' /> 
				<attribute name='key' type='String' optional='false' /> 
			</attributes>
		</action> 
 		<action name='delete' transport='HTTP_DELETE' > 
			<overrides> 
				<param name='url' expr='/genesys/1/storage/${id}'/>
			</overrides>  
			<attributes> 
				<attribute name='id' type='String' optional='false' /> 
			</attributes>
		</action> 
	</actions> 
	
</dfm>