AFAIK, it is neither possible to
- conditionally add a p2 repository only if a dependency is not satisfied, nor
- add a p2 repository before an installation - you can only add p2 repositories e.g. during the installation of a feature, which then may be used in the next operation, e.g. an update.
However you can achieve your use case by including the p2 repository with the dependencies of your feature in your own p2 repository.
Technically, there are different solutions to this, but the simplest one is probably to create a so-called "composite repository" that includes both the repository with your own content, as well as the repositories with the external dependencies.