public void Init()
            {
                _profile       = new AdminManagementMappingProfile();
                _configuration = new MapperConfiguration(cfg => cfg.AddProfile(_profile));
                _mapper        = _configuration.CreateMapper();
                _configuration.AssertConfigurationIsValid();

                _addresses = new List <EdFiEducationOrganizationAddress>
                {
                    new EdFiEducationOrganizationAddress(AddressTypeDescriptor, stateAbbreviationDescriptor: StateAbbreviationDescriptor,
                                                         apartmentRoomSuiteNumber: ApartmentRoomSuiteNumber, city: City, postalCode: PostalCode, streetNumberName: StreetNumberName)
                };
                _gradeLevels = new List <EdFiSchoolGradeLevel>
                {
                    new EdFiSchoolGradeLevel(GradeLevelDescriptor)
                };
                _edOrgCategories = new List <EdFiEducationOrganizationCategory>();
                _leaReference    = new EdFiLocalEducationAgencyReference(LeaId);

                var postSecondaryInstitutionReference = new EdFiPostSecondaryInstitutionReference(PsiId);
                var tpdmExtension = new TpdmSchoolExtension(AccreditationStatusDescriptor, FederalLocaleCodeDescriptor, ImprovingSchool, postSecondaryInstitutionReference);

                _schoolExtensions = new SchoolExtensions(tpdmExtension);

                _stateEducationAgencyReference = new EdFiStateEducationAgencyReference(StateEducationAgencyId);
            }
        public SchoolExtensions Resolve(School source, EdFiSchool destination, SchoolExtensions destMember,
                                        ResolutionContext context)
        {
            var psiId = source.PostSecondaryInstitutionId ?? destination._ext?.TPDM?.PostSecondaryInstitutionReference?.PostSecondaryInstitutionId;
            var postSecondaryInstitutionReference = psiId != null ? new EdFiPostSecondaryInstitutionReference(psiId) : null;
            var tpdmExtension    = new TpdmSchoolExtension(source.AccreditationStatus, source.FederalLocaleCode, source.ImprovingSchool, postSecondaryInstitutionReference);
            var schoolExtensions = new SchoolExtensions(tpdmExtension);

            return(schoolExtensions);
        }
 public SchoolExtensions(TpdmSchoolExtension tpdm)
 {
     TPDM = tpdm;
 }