001// --------------------------------------------------------------------------------
002// Copyright 2002-2024 Echo Three, LLC
003//
004// Licensed under the Apache License, Version 2.0 (the "License");
005// you may not use this file except in compliance with the License.
006// You may obtain a copy of the License at
007//
008//     http://www.apache.org/licenses/LICENSE-2.0
009//
010// Unless required by applicable law or agreed to in writing, software
011// distributed under the License is distributed on an "AS IS" BASIS,
012// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
013// See the License for the specific language governing permissions and
014// limitations under the License.
015// --------------------------------------------------------------------------------
016
017package com.echothree.model.control.security.server.transfer;
018
019import com.echothree.model.control.security.server.control.SecurityControl;
020import com.echothree.model.data.user.server.entity.UserVisit;
021import com.echothree.util.server.transfer.BaseTransferCaches;
022
023public class SecurityTransferCaches
024        extends BaseTransferCaches {
025    
026    protected SecurityControl securityControl;
027    
028    protected SecurityRoleGroupTransferCache securityRoleGroupTransferCache;
029    protected SecurityRoleGroupDescriptionTransferCache securityRoleGroupDescriptionTransferCache;
030    protected SecurityRoleTransferCache securityRoleTransferCache;
031    protected SecurityRoleDescriptionTransferCache securityRoleDescriptionTransferCache;
032    protected SecurityRolePartyTypeTransferCache securityRolePartyTypeTransferCache;
033    protected PartySecurityRoleTemplateTransferCache partySecurityRoleTemplateTransferCache;
034    protected PartySecurityRoleTemplateDescriptionTransferCache partySecurityRoleTemplateDescriptionTransferCache;
035    protected PartySecurityRoleTemplateRoleTransferCache partySecurityRoleTemplateRoleTransferCache;
036    protected PartySecurityRoleTemplateTrainingClassTransferCache partySecurityRoleTemplateTrainingClassTransferCache;
037    
038    /** Creates a new instance of SecurityTransferCaches */
039    public SecurityTransferCaches(UserVisit userVisit, SecurityControl securityControl) {
040        super(userVisit);
041        
042        this.securityControl = securityControl;
043    }
044    
045    public SecurityRoleGroupTransferCache getSecurityRoleGroupTransferCache() {
046        if(securityRoleGroupTransferCache == null)
047            securityRoleGroupTransferCache = new SecurityRoleGroupTransferCache(userVisit, securityControl);
048        
049        return securityRoleGroupTransferCache;
050    }
051    
052    public SecurityRoleGroupDescriptionTransferCache getSecurityRoleGroupDescriptionTransferCache() {
053        if(securityRoleGroupDescriptionTransferCache == null)
054            securityRoleGroupDescriptionTransferCache = new SecurityRoleGroupDescriptionTransferCache(userVisit, securityControl);
055        
056        return securityRoleGroupDescriptionTransferCache;
057    }
058    
059    public SecurityRoleTransferCache getSecurityRoleTransferCache() {
060        if(securityRoleTransferCache == null)
061            securityRoleTransferCache = new SecurityRoleTransferCache(userVisit, securityControl);
062        
063        return securityRoleTransferCache;
064    }
065    
066    public SecurityRoleDescriptionTransferCache getSecurityRoleDescriptionTransferCache() {
067        if(securityRoleDescriptionTransferCache == null)
068            securityRoleDescriptionTransferCache = new SecurityRoleDescriptionTransferCache(userVisit, securityControl);
069        
070        return securityRoleDescriptionTransferCache;
071    }
072    
073    public SecurityRolePartyTypeTransferCache getSecurityRolePartyTypeTransferCache() {
074        if(securityRolePartyTypeTransferCache == null)
075            securityRolePartyTypeTransferCache = new SecurityRolePartyTypeTransferCache(userVisit, securityControl);
076        
077        return securityRolePartyTypeTransferCache;
078    }
079    
080    public PartySecurityRoleTemplateTransferCache getPartySecurityRoleTemplateTransferCache() {
081        if(partySecurityRoleTemplateTransferCache == null)
082            partySecurityRoleTemplateTransferCache = new PartySecurityRoleTemplateTransferCache(userVisit, securityControl);
083        
084        return partySecurityRoleTemplateTransferCache;
085    }
086    
087    public PartySecurityRoleTemplateDescriptionTransferCache getPartySecurityRoleTemplateDescriptionTransferCache() {
088        if(partySecurityRoleTemplateDescriptionTransferCache == null)
089            partySecurityRoleTemplateDescriptionTransferCache = new PartySecurityRoleTemplateDescriptionTransferCache(userVisit, securityControl);
090        
091        return partySecurityRoleTemplateDescriptionTransferCache;
092    }
093    
094    public PartySecurityRoleTemplateRoleTransferCache getPartySecurityRoleTemplateRoleTransferCache() {
095        if(partySecurityRoleTemplateRoleTransferCache == null)
096            partySecurityRoleTemplateRoleTransferCache = new PartySecurityRoleTemplateRoleTransferCache(userVisit, securityControl);
097        
098        return partySecurityRoleTemplateRoleTransferCache;
099    }
100    
101    public PartySecurityRoleTemplateTrainingClassTransferCache getPartySecurityRoleTemplateTrainingClassTransferCache() {
102        if(partySecurityRoleTemplateTrainingClassTransferCache == null)
103            partySecurityRoleTemplateTrainingClassTransferCache = new PartySecurityRoleTemplateTrainingClassTransferCache(userVisit, securityControl);
104        
105        return partySecurityRoleTemplateTrainingClassTransferCache;
106    }
107    
108}