Метод Scala, где тип второго параметра равняется части универсального типа от первого параметра

Я хочу создать определенный общий метод в Scala. Требуется два параметра. Первое имеет тип универсального Интерфейса Java (это от запроса критериев JPA). Это в настоящее время похоже на это:

def genericFind(attribute:SingularAttribute[Person, _], value:Object) {
  ...
}

// The Java Interface which is the type of the first parameter in my find-method:
public interface SingularAttribute<X, T> extends Attribute<X, T>, Bindable<T>

Теперь я хочу достигнуть следующего: значение в настоящее время имеет тип java.lang. Объект. Но я хочу сделать это более конкретным. Значение должно быть того же типа как заполнитель "_" от первого параметра (и так представляет "T" в интерфейсе Java).

Это так или иначе возможно, и как?

BTW Извините за глупый заголовок вопроса (какие-либо предложения?)

Править: добавленный addtional пример, который мог сделать проблему более ясной:

// A practical example how the Scala method could be called 

// Java class:
public class Person_ {
  public static volatile SingularAttribute<Person, Long> id;
}

// Calling the method from Scala:
genericFind(Person_.id, Long)
5
задан Ingo Fischer 18 June 2010 в 10:12
поделиться