private static DcsManifestation getManifestation(SolrDocument doc) {
    DcsManifestation man = new DcsManifestation();

    man.setId(get(doc, EntityField.ID));

    if (has(doc, ManifestationField.DELIVERABLE_UNIT)) {
      man.setDeliverableUnit(get(doc, ManifestationField.DELIVERABLE_UNIT));
    }

    man.setMetadata(getMetadataSet(doc));
    man.setMetadataRef(getMetadataRefSet(doc, EntityField.METADATA_REF));
    man.setManifestationFiles(getManifestationFileSet(doc));

    if (has(doc, CoreMetadataField.TYPE)) {
      man.setType(get(doc, CoreMetadataField.TYPE));
    }

    man.setTechnicalEnvironment(getStringSet(doc, ManifestationField.TECH));

    if (has(doc, ManifestationField.DATE_CREATED)) {
      man.setDateCreated(
          DateUtility.toIso8601(
              ((Date) doc.getFirstValue(ManifestationField.DATE_CREATED.solrName())).getTime()));
    }

    man.setAlternateIds(getResourceIdentifierSet(doc));
    return man;
  }