/* * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. * Copyright (c) 2013, MPL CodeInside http://codeinside.ru */ package ru.codeinside.gws3564c; import ru.codeinside.gws.api.ExchangeContext; import ru.codeinside.gws3564c.enclosure.EnclosureRequestBuilder; import ru.codeinside.gws3564c.enclosure.gkn.EncRealtyCadastralPassport; import ru.codeinside.gws3564c.enclosure.gkn.EnclosureCadastralExtract; import ru.codeinside.gws3564c.enclosure.gkn.ParcelCadastralPlanRequest; import ru.codeinside.gws3564c.enclosure.gkn.ParcelValueRequest; import ru.codeinside.gws3564c.enclosure.grp.*; public class EnclosureBuilderFactory { public static EnclosureRequestBuilder createEnclosureBuilder(ExchangeContext ctx) { RequestType reqType = RequestType.valueOf((String) ctx.getVariable("enclosure_request_type")); switch (reqType) { case OBJECT_RIGHTS: { return new ObjectRightEnclosureBuilder(ctx); } case SUBJECT_RIGHTS: { return new SubjectRightsEnclosureBuilder(ctx); } case INCAPACITY_OWNER_RIGHTS: { return new ExtractDataAboutIncapacityOwnerBuilder(ctx); } case SUBJECT_RIGHTS_HISTORY: { return new SubjectRightsHistoryEnclosureBuilder(ctx); } case CONTENT_DOCUMENT_EXTRACT: { return new DocumentContentEnclosureBuilder(ctx); } case RIGHTS_ESTABLISH: { return new RightsEstablishEnclosureBuilder(ctx); } case CADASTRAL_PASSPORT: case PARCEL_CADASTRAL_PASSPORT: { // запрос кадастрового паспорта return new EncRealtyCadastralPassport(ctx); } case PARCEL_VALUE: { // О запросе кадастровой справки о кадастровой стоимости земельного участка return new ParcelValueRequest(ctx); } case PARCEL_CADASTRAL_PLAN: { // кадастровый план участка return new ParcelCadastralPlanRequest(ctx); } case CADASTRAL_EXTRACT: { // выписка кадастрового плана return new EnclosureCadastralExtract(ctx); } default: throw new UnsupportedOperationException(); } } }