excluded Throwable from sonar because it cant be omitted
fixed sonars magic number, made a constant out of the milliseconds value
store the copy of expiry object