.. java:import:: dk.magenta.datafordeler.core.arearestriction AreaRestriction .. java:import:: dk.magenta.datafordeler.core.arearestriction AreaRestrictionType .. java:import:: dk.magenta.datafordeler.core.database DatabaseEntry .. java:import:: dk.magenta.datafordeler.core.database QueryManager .. java:import:: dk.magenta.datafordeler.core.plugin AreaRestrictionDefinition .. java:import:: dk.magenta.datafordeler.core.user DafoUserDetails .. java:import:: dk.magenta.datafordeler.core.util BitemporalityComparator .. java:import:: dk.magenta.datafordeler.core.util LoggerHelper .. java:import:: dk.magenta.datafordeler.cpr CprAreaRestrictionDefinition .. java:import:: dk.magenta.datafordeler.cpr CprPlugin .. java:import:: dk.magenta.datafordeler.cpr CprRolesDefinition .. java:import:: dk.magenta.datafordeler.cpr.data.person PersonEntity .. java:import:: dk.magenta.datafordeler.cpr.data.person PersonRecordQuery .. java:import:: dk.magenta.datafordeler.cpr.records CprBitemporalRecord .. java:import:: dk.magenta.datafordeler.cpr.records CprBitemporality .. java:import:: dk.magenta.datafordeler.cpr.records CprNontemporalRecord .. java:import:: dk.magenta.datafordeler.geo GeoLookupService .. java:import:: dk.magenta.datafordeler.statistik StatistikRolesDefinition .. java:import:: dk.magenta.datafordeler.statistik.reportExecution ReportProgressStatus .. java:import:: dk.magenta.datafordeler.statistik.reportExecution ReportSyncHandler .. java:import:: dk.magenta.datafordeler.statistik.utils Filter .. java:import:: org.apache.logging.log4j LogManager .. java:import:: org.apache.logging.log4j Logger .. java:import:: org.apache.poi.ss.formula.functions T .. java:import:: org.hibernate Session .. java:import:: java.io IOException .. java:import:: java.io OutputStream .. java:import:: java.time OffsetDateTime .. java:import:: java.time ZoneId .. java:import:: java.util.stream Collector .. java:import:: java.util.stream Collectors .. java:import:: java.util.stream Stream PersonStatisticsService ======================= .. java:package:: dk.magenta.datafordeler.statistik.services :noindex: .. java:type:: public abstract class PersonStatisticsService extends StatisticsService Fields ------ cprDataOffset ^^^^^^^^^^^^^ .. java:field:: public static final ZoneId cprDataOffset :outertype: PersonStatisticsService Methods ------- FilterOnRegistrationFrom ^^^^^^^^^^^^^^^^^^^^^^^^ .. java:method:: public static List FilterOnRegistrationFrom(Collection records, OffsetDateTime registrationTimeStart, OffsetDateTime registrationTimeEnd) :outertype: PersonStatisticsService applyAreaRestrictionsToQuery ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. java:method:: protected void applyAreaRestrictionsToQuery(PersonRecordQuery query, DafoUserDetails user) throws InvalidClientInputException :outertype: PersonStatisticsService filterRecordsByEffect ^^^^^^^^^^^^^^^^^^^^^ .. java:method:: public static Set filterRecordsByEffect(Collection records, OffsetDateTime effectAt) :outertype: PersonStatisticsService filterRecordsByRegistration ^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. java:method:: public static Set filterRecordsByRegistration(Collection records, OffsetDateTime registrationAt) :outertype: PersonStatisticsService filterUndoneRecords ^^^^^^^^^^^^^^^^^^^ .. java:method:: public static Set filterUndoneRecords(Collection records) :outertype: PersonStatisticsService findMostImportant ^^^^^^^^^^^^^^^^^ .. java:method:: public static R findMostImportant(Collection records) :outertype: PersonStatisticsService Find the most important registration according to "bitemporalComparator" Records with a missing OriginDate is removed since they are considered invalid :param records: :param : findNewestAfterFilterOnEffect ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. java:method:: public static R findNewestAfterFilterOnEffect(Collection records, OffsetDateTime effectAt) :outertype: PersonStatisticsService :param records: :param effectAt: :param : findNewestUnclosed ^^^^^^^^^^^^^^^^^^ .. java:method:: public static R findNewestUnclosed(Collection records) :outertype: PersonStatisticsService Find the newest unclosed record from the list of records Records with a missing OriginDate is also removed since they are considered invalid :param records: :param : findNewestUnclosedOnRegistartionAndEffect ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. java:method:: public static R findNewestUnclosedOnRegistartionAndEffect(Collection records) :outertype: PersonStatisticsService Find the newest unclosed record from the list of records Records with a missing OriginDate is also removed since they are considered invalid :param records: :param : findNewestUnclosedWithSpecifiedEffect ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. java:method:: public static R findNewestUnclosedWithSpecifiedEffect(Collection records, OffsetDateTime effectAt) :outertype: PersonStatisticsService Find the newest unclosed record with specified effect from the list of records Records with a missing OriginDate is also removed since they are considered invalid :param records: :param : findRegistrationAtMatchingChangedtimePost ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. java:method:: public static R findRegistrationAtMatchingChangedtimePost(Collection records, OffsetDateTime changedToOrIsTime) :outertype: PersonStatisticsService Find a record which is uncloced in effect, and has a registrationFrom equal to changedToOrIsTime. If none is found find the record with the newest registrationFrom. Otherwise return null :param records: :param : findRegistrationAtMatchingChangedtimePre ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. java:method:: public static R findRegistrationAtMatchingChangedtimePre(Collection records, OffsetDateTime changedToOrIsTime) :outertype: PersonStatisticsService Find a record which is uncloced in effect, and has a registrationto equal to changedToOrIsTime. If none is found find the record with the newest registrationFrom. Otherwise return null :param records: :param : formatItems ^^^^^^^^^^^ .. java:method:: public Stream> formatItems(Session personSession, Stream personEntities, Session lookupSession, Filter filter) :outertype: PersonStatisticsService formatPerson ^^^^^^^^^^^^ .. java:method:: protected abstract List> formatPerson(PersonEntity person, Session session, GeoLookupService lookupService, Filter filter) :outertype: PersonStatisticsService getBitemporality ^^^^^^^^^^^^^^^^ .. java:method:: public static CprBitemporality getBitemporality(CprBitemporalRecord record) :outertype: PersonStatisticsService getCprPlugin ^^^^^^^^^^^^ .. java:method:: protected abstract CprPlugin getCprPlugin() :outertype: PersonStatisticsService getQuery ^^^^^^^^ .. java:method:: protected PersonRecordQuery getQuery(Filter filter) :outertype: PersonStatisticsService getQueryList ^^^^^^^^^^^^ .. java:method:: protected List getQueryList(Filter filter) throws IOException :outertype: PersonStatisticsService requiredParameters ^^^^^^^^^^^^^^^^^^ .. java:method:: protected String[] requiredParameters() :outertype: PersonStatisticsService run ^^^ .. java:method:: public int run(Filter filter, OutputStream outputStream, String reportUuid) :outertype: PersonStatisticsService sortRecords ^^^^^^^^^^^ .. java:method:: public static List sortRecords(Collection records) :outertype: PersonStatisticsService