001package de.deepamehta.core.impl; 002 003import de.deepamehta.core.RelatedAssociation; 004import de.deepamehta.core.model.AssociationModel; 005import de.deepamehta.core.model.RelatedAssociationModel; 006 007 008 009class RelatedAssociationModelImpl extends AssociationModelImpl implements RelatedAssociationModel { 010 011 // ---------------------------------------------------------------------------------------------- Instance Variables 012 013 private AssociationModelImpl relatingAssoc; 014 015 // ---------------------------------------------------------------------------------------------------- Constructors 016 017 RelatedAssociationModelImpl(AssociationModelImpl assoc, AssociationModelImpl relatingAssoc) { 018 super(assoc); 019 this.relatingAssoc = relatingAssoc; 020 } 021 022 // -------------------------------------------------------------------------------------------------- Public Methods 023 024 @Override 025 public AssociationModelImpl getRelatingAssociation() { 026 return relatingAssoc; 027 } 028 029 // === Java API === 030 031 @Override 032 public String toString() { 033 return super.toString() + ", relating " + relatingAssoc; 034 } 035 036 037 038 // ----------------------------------------------------------------------------------------- Package Private Methods 039 040 @Override 041 String className() { 042 return "related association"; 043 } 044 045 @Override 046 RelatedAssociation instantiate() { 047 return new RelatedAssociationImpl(this, pl); 048 } 049}