List scheduledSurveys = scheduledSurveyService.find( visitDefinition.getContractor(), contractorGroups, entity.getDate() ); for (ScheduledSurvey scheduledSurvey : scheduledSurveys) { AbstractSurveyDefinition abstractSurveyDefinition = scheduledSurvey.getAbstractSurveyDefinition(); if (abstractSurveyDefinition instanceof SurveyDefinition) visitDefinition.addSurveyDefinition( (SurveyDefinition) abstractSurveyDefinition ); else if (abstractSurveyDefinition instanceof ProductSurveyDefinition) visitDefinition.addProductSurveyDefinition( (ProductSurveyDefinition) abstractSurveyDefinition ); else throw new IllegalStateException( "nieznany typ definicji ankiety " + abstractSurveyDefinition.getClass().getName() ); }