code: public List<RepositoryResourceImpl> findMatchingResource() throws RepositoryResourceValidationException, RepositoryBackendException, RepositoryBadDataException, RepositoryResourceNoConnectionException {
          List<RepositoryResourceImpl> matchingRes;
          try {
              matchingRes = performMatching();
              if (matchingRes != null && matchingRes.size() > 1) {
                  StringBuilder warningMessage = new StringBuilder("More than one match found for " + getName() + ":");
                  for (RepositoryResourceImpl massiveResource : matchingRes) {
                      warningMessage.append("\n\t" + massiveResource.getName() + " (" + massiveResource.getId() + ")");
                  }
                  logger.warning(warningMessage.toString());
              }
          } catch (BadVersionException bvx) {
              throw new RepositoryBadDataException("BadDataException accessing asset", getId(), bvx);
          } catch (RequestFailureException bfe) {
              throw new RepositoryBackendRequestFailureException(bfe, getRepositoryConnection());
          }
          return matchingRes;
      }
docs: This method tries to find out if there is a match for "this" resource already in massive.
  
  @return A list of resources that were found in massive which has the same name, provider and type as this
  resource, an empty list otherwise.
  @throws RepositoryResourceValidationException If the resource fails a validation check
  @throws RepositoryBackendException If there was a problem talking to the backend
  @throws RepositoryResourceNoConnectionException If no connection has been specified