I would introduce 2 constructors, a default one and another initializing download / upload.