private void finishCommon(){
  if (!unknownSubjects.isEmpty()) {
    if (statements.isEmpty() && restoredStatements.isEmpty()) {
      throw new BadSubjectException(unknownSubjects.keySet(),uris);
    }
 else {
      log.info("Unrecognized subjects: {}.  Expected only sitelinks and subjects starting with {} and {}",unknownSubjects.keySet(),uris.entityData(),uris.entity());
    }
  }
  if (revisionId == null) {
    throw new ContainedException("Didn't get a revision id for " + statements);
  }
  if (lastModified == null) {
    throw new ContainedException("Didn't get a last modified date for " + statements);
  }
  for (  Pair<URI,Literal> dataStatement : dataStatements) {
    statements.add(new StatementImpl(entityUriImpl,dataStatement.getLeft(),dataStatement.getRight()));
  }
  statements.addAll(restoredStatements);
}

private void finishCommon ( ) { if ( ! unknownSubjects . isEmpty ( ) ) { if ( statements . isEmpty ( ) && restoredStatements . isEmpty ( ) ) { throw new BadSubjectException ( unknownSubjects . keySet ( ) , uris ) ; } else { log . info ( "Unrecognized subjects: {}.  Expected only sitelinks and subjects starting with {} and {}" , unknownSubjects . keySet ( ) , uris . entityData ( ) , uris . entity ( ) ) ; } } if ( revisionId == null ) { throw new ContainedException ( "Didn't get a revision id for " + statements ) ; } if ( lastModified == null ) { throw new ContainedException ( "Didn't get a last modified date for " + statements ) ; } for ( Pair < URI , Literal > dataStatement : dataStatements ) { statements . add ( new StatementImpl ( entityUriImpl , dataStatement . getLeft ( ) , dataStatement . getRight ( ) ) ) ; } statements . addAll ( restoredStatements ) ; }
perform all munge completion tasks that are required no matter the configuration . its important that finishcommon be the last finish method called because it is the one that restores restoredstatments into the original statements collection .
