archivefactory pattern