Create composition instead of inheritance
"... instead of inheritance.." I expected the JobFilterRequest class to encapsulate the TimeFrame object by wrapping the contained TimeFrame object's methods in its own. Thus the client code is not aware of a distinct inner object - the Law of Demeter a.k.a. the least knowledge principle.

That encapsulation implies there is no public getter; and I would prefer a constructor parameter over the public setter.

If we inherit from TimeFrame there is no contained object, so good encapsulation makes composition "feel" the same for the client code. Class types are different of course, but we're still calling the same methods and getting the same behavior.