StoreSessionImpl implements StoreSession {
private static final AtomicInteger prevSerialNo = new AtomicInteger();
private final int serialNo;
private ApplicationEntity ae;
private Association as;
private HttpServletRequest httpRequest;
private HL7Application hl7App;
private String calledAET;
private Socket socket;
private UnparsedHL7Message msg;
private final StoreService storeService;
private final Map<String, Storage> storageMap = new HashMap<>();
private Study cachedStudy;
private final Map<String,Series> seriesCache = new HashMap<>();
private final Map<Long,UIDMap> uidMapCache = new HashMap<>();
private Map<String, String> uidMap;
private String objectStorageID;
private String metadataStorageID;
private AcceptMissingPatientID acceptMissingPatientID;
private AcceptConflictingPatientID acceptConflictingPatientID;
private Attributes.UpdatePolicy patientUpdatePolicy;
private Attributes.UpdatePolicy studyUpdatePolicy;
StoreSessionImpl(StoreService storeService) {
this.serialNo = prevSerialNo.incrementAndGet();
this.storeService = storeService;
}
}
class StoreContextImpl implements StoreContext {
private final StoreSession storeSession;
private String sopClassUID;
private String sopInstanceUID;
private String receiveTranferSyntaxUID;
private String storeTranferSyntaxUID;
private String acceptedStudyInstanceUID;
private int moveOriginatorMessageID;
private String moveOriginatorAETitle;
private final EnumMap<Location.ObjectType,WriteContext> writeContexts =
new EnumMap<Location.ObjectType, WriteContext>(Location.ObjectType.class);
private Attributes attributes;
private Attributes coercedAttributes;
private String studyInstanceUID;
private String seriesInstanceUID;
private String mppsInstanceUID;
private RejectionNote rejectionNote;
private Instance previousInstance;
private Instance storedInstance;
private Exception exception;
private final List<Location> locations = new ArrayList<>();
private String[] retrieveAETs;
private Availability availability;
private LocalDate expirationDate;
public StoreContextImpl(StoreSession storeSession) {
this.storeSession = storeSession;
}
}