001/** 002 * Licensed to the Apache Software Foundation (ASF) under one or more 003 * contributor license agreements. See the NOTICE file distributed with 004 * this work for additional information regarding copyright ownership. 005 * The ASF licenses this file to You under the Apache License, Version 2.0 006 * (the "License"); you may not use this file except in compliance with 007 * the License. You may obtain a copy of the License at 008 * 009 * http://www.apache.org/licenses/LICENSE-2.0 010 * 011 * Unless required by applicable law or agreed to in writing, software 012 * distributed under the License is distributed on an "AS IS" BASIS, 013 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 014 * See the License for the specific language governing permissions and 015 * limitations under the License. 016 */ 017package org.apache.isis.core.metamodel.spec.feature; 018 019import org.apache.isis.core.commons.authentication.AuthenticationSessionProvider; 020import org.apache.isis.core.metamodel.adapter.QuerySubmitter; 021import org.apache.isis.core.metamodel.adapter.ServicesProvider; 022import org.apache.isis.core.metamodel.adapter.mgr.AdapterManager; 023import org.apache.isis.core.metamodel.deployment.DeploymentCategory; 024import org.apache.isis.core.metamodel.spec.SpecificationLoader; 025import org.apache.isis.core.metamodel.specloader.collectiontyperegistry.CollectionTypeRegistry; 026 027public class ObjectMemberContext { 028 029 private final DeploymentCategory deploymentCategory; 030 private final AuthenticationSessionProvider authenticationSessionProvider; 031 private final SpecificationLoader specificationLookup; 032 private final AdapterManager adapterManager; 033 private final QuerySubmitter querySubmitter; 034 private final CollectionTypeRegistry collectionTypeRegistry; 035 private final ServicesProvider servicesProvider; 036 037 public ObjectMemberContext( 038 final DeploymentCategory deploymentCategory, 039 final AuthenticationSessionProvider authenticationSessionProvider, 040 final SpecificationLoader specificationLookup, 041 final AdapterManager adapterManager, 042 final QuerySubmitter querySubmitter, 043 final CollectionTypeRegistry collectionTypeRegistry, 044 final ServicesProvider servicesProvider) { 045 046 this.deploymentCategory = deploymentCategory; 047 this.authenticationSessionProvider = authenticationSessionProvider; 048 this.specificationLookup = specificationLookup; 049 this.adapterManager = adapterManager; 050 this.querySubmitter = querySubmitter; 051 this.collectionTypeRegistry = collectionTypeRegistry; 052 this.servicesProvider = servicesProvider; 053 } 054 055 public DeploymentCategory getDeploymentCategory() { 056 return deploymentCategory; 057 } 058 059 public AuthenticationSessionProvider getAuthenticationSessionProvider() { 060 return authenticationSessionProvider; 061 } 062 063 public SpecificationLoader getSpecificationLookup() { 064 return specificationLookup; 065 } 066 067 public AdapterManager getAdapterManager() { 068 return adapterManager; 069 } 070 071 public ServicesProvider getServicesProvider() { 072 return servicesProvider; 073 } 074 075 public QuerySubmitter getQuerySubmitter() { 076 return querySubmitter; 077 } 078 079 public CollectionTypeRegistry getCollectionTypeRegistry() { 080 return collectionTypeRegistry; 081 } 082}