<?xml version="1.0" encoding="UTF-8"?>
<!--
 * 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.    
-->
<composite	xmlns="http://docs.oasis-open.org/ns/opencsa/sca/200912"
		xmlns:tuscany="http://tuscany.apache.org/xmlns/sca/1.1"
		targetNamespace="http://org.apache.photoark"
		name="photo-gallery-jcr">

  	<!-- Component responsible for providing Access Management for gallery/album -->
	<component name="AccessManager">
   		<implementation.java class="org.apache.photark.jcr.security.authorization.JCRAccessManager"/>
   		<service name="AccessManager">
   			<interface.java interface="org.apache.photark.security.authorization.services.AccessManager"/>
   			<binding.sca name="local"/>
   		    <!--<tuscany:binding.jsonrpc uri="/AccessManagerService"/>-->
		</service>
		<service name="JSONAccessManager">
   			<interface.java interface="org.apache.photark.security.authorization.services.JSONAccessManager"/>
   		    <tuscany:binding.jsonrpc uri="/AccessManagerService"/>
		</service>
   		<reference name="repositoryManager" target="RepositoryManager"/>
    </component>

    <!-- Facade component for Gallery -->
    <component name="Gallery">
   		<implementation.java class="org.apache.photark.jcr.services.JCRGalleryImpl"/>
   		<property name="name">gallery</property>
   		<service name="Gallery">
   			<interface.java interface="org.apache.photark.services.gallery.Gallery"/>
   			<binding.sca name="local"/>
   			<tuscany:binding.jsonrpc uri="/GalleryService"/>
   		</service>
   		<reference name="repositoryManager" target="RepositoryManager"/>
   		<reference name="listeners" target="SearchService"/>
   	    <reference name="accessmanager" target="AccessManager"/>
    </component>

    <!-- Component responsible for providing REST access to images -->
    <component name="ImageServiceComponent">
		<implementation.java class="org.apache.photark.jcr.services.JCRImageCollectionImpl"/>
		<service name="ImageCollection">
			<tuscany:binding.http uri="/gallery"/>
		</service>
		<reference name="repositoryManager" target="RepositoryManager"/>
	</component>
	
	<!-- Component responsible for providing REST access to Security Data -->
    <component name="SecurityServiceComponent">
		<implementation.java class="org.apache.photark.security.authorization.services.SecurityServiceImpl"/>
		<service name="Servlet">
			<tuscany:binding.http uri="/security"/>
		</service>
		<reference name="accessmanager" target="AccessManager">
			<binding.sca name="local"/>
		</reference>
		<!--<reference name="accessmanager" target="AccessManager"/>-->
	</component>

    <!-- Component responsible for providing upload support for gallery/album -->
    <component name="ImageUploadServiceComponent">
		<implementation.java class="org.apache.photark.jcr.services.JCRImageUploadServiceImpl"/>
		<service name="Servlet">
			<tuscany:binding.http uri="/admin/upload"/>
		</service>
		<reference name="repositoryManager" target="RepositoryManager"/>
		<reference name="gallery" target="Gallery">
			<binding.sca name="local"/>
		</reference> 
		<reference name="accessmanager" target="AccessManager"/>

	</component>
	
    <!-- Component responsible for providing JCR Management Support -->
    <component name="RepositoryManager">
		<implementation.java class="org.apache.photark.jcr.JCRRepositoryManager"/>
		<property name="repositoryHome">photark</property>
	</component> 	
	
	<!-- Component responsible for providing OpenID Authentication for PhotArk -->
    <component name="OpenIdAuthenticationServiceComponent">
		<implementation.java class="org.apache.photark.security.authentication.services.OpenIDAuthenticationServiceImpl"/>
		<service name="Servlet">
			<tuscany:binding.http uri="/home/authenticate"/>
		</service>
		<reference name="accessmanager" target="AccessManager">
			<binding.sca name="local"/>
		</reference> 	  	
	</component> 
	
    <!-- Component responsible for providing FORM Authentication for PhotArk -->
    <component name="FormAuthenticationServiceComponent">
		<implementation.java class="org.apache.photark.security.authentication.services.FormAuthenticationServiceImpl"/>
		<service name="Servlet">
			<tuscany:binding.http uri="/admin/authenticate"/>
		</service> 
		<reference name="accessmanager" target="AccessManager">
			<binding.sca name="local"/>
		</reference>	  	
	</component> 
	
	<!-- Component responsible for providing logging out from the active user-->
    <component name="LogoutAuthenticationServiceComponent">
		<implementation.java class="org.apache.photark.security.authentication.services.LogoutServiceImpl"/>
		<service name="Servlet">
			<tuscany:binding.http uri="/logout"/>
		</service>
	    <reference name="accessmanager" target="AccessManager">
			<binding.sca name="local"/>
		</reference>	
	</component>
	
	<!-- Component responsible for indexing and searching images -->
    <component name="SearchService">
		<implementation.java class="org.apache.photark.search.services.impl.SearchServiceImpl"/>
		<property name="indexDirectoryPath">search-index</property>
		
		<service name="SearchService">
   			<interface.java interface="org.apache.photark.search.services.SearchService"/>
   			<binding.sca name="local"/>
   			<tuscany:binding.jsonrpc uri="/SearchService"/>
   		</service>
   		<reference name="accessmanager" target="AccessManager">
			<binding.sca name="local"/>
		</reference>	
		
	</component>



    <component name="RemoteAlbumSubscriptionManager">
		<implementation.java class="org.apache.photark.jcr.album.subscription.AlbumSubscriptionManager"/>

		<service name="RemoteAlbumSubscription">
   			<interface.java interface="org.apache.photark.services.gallery.RemoteAlbumSubscription"/>
   			<binding.sca name="local"/>
   			<tuscany:binding.jsonrpc uri="/RemoteAlbumSubscriptionManager"/>
   		</service>
     <reference name="repositoryManager" target="RepositoryManager"/>
     <reference name="jcrRemoteGallery" target="RemoteGallery"/>
	</component>

    <component name="RemoteGallery">
   		<implementation.java class="org.apache.photark.jcr.services.JCRRemoteGalleryImpl"/>
   		<property name="name">gallery</property>
   		<service name="RemoteGallery">
   			<interface.java interface="org.apache.photark.services.gallery.RemoteGallery"/>
   			<binding.sca name="local"/>
   			<tuscany:binding.jsonrpc uri="/JCRRemoteGallery"/>
   		</service>
   		<reference name="repositoryManager" target="RepositoryManager"/>
   		<reference name="listeners" target="SearchService"/>
   	    <reference name="accessmanager" target="AccessManager"/>
    </component>

    <component name="FaceRecognitionService">
		<implementation.java class="org.apache.photark.face.services.FaceRecognitionServiceImpl"/>

		<service name="FaceRecognitionService">
   			<interface.java interface="org.apache.photark.face.services.FaceRecognitionService"/>
   			<binding.sca name="local"/>
   			<tuscany:binding.jsonrpc uri="/FaceRecognitionService"/>
   		</service>
	</component>

     <component name="FacebookFriendFinder">
		<implementation.java class="org.apache.photark.face.services.applications.facebook.FacebookFriendFinderImpl"/>

		<service name="FacebookFriendFinder">
   			<interface.java interface="org.apache.photark.face.services.applications.facebook.FacebookFriendFinder"/>
   			<binding.sca name="local"/>
   			<tuscany:binding.jsonrpc uri="/FacebookFriendFinder"/>
   		</service>
        <reference name="faceRecognitionService" target="FaceRecognitionService"/>
        <reference name="accessmanager" target="AccessManager"/>

	</component>


         <component name="GenericFriendFinder">
		<implementation.java class="org.apache.photark.face.services.applications.generic.GenericFriendFinderImpl"/>

		<service name="GenericFriendFinder">
   			<interface.java interface="org.apache.photark.face.services.applications.generic.GenericFriendFinder"/>
   			<binding.sca name="local"/>
   			<tuscany:binding.jsonrpc uri="/GenericFriendFinder"/>
   		</service>
        <reference name="faceRecognitionService" target="FaceRecognitionService"/>
        <reference name="accessmanager" target="AccessManager"/>

      	</component>
	
</composite>
