如何将特殊的java接口转换为pascal接口?

时间:2018-01-30 22:42:18

标签: delphi firemonkey

我有那两个接口

public interface TransferListener<S> {
  ...
}

public interface BandwidthMeter {
 ...
}

和这个实现:

public final class DefaultBandwidthMeter implements BandwidthMeter, TransferListener<Object> {
  ....
}

我如何声明DefaultBandwidthMeter的pascal版本

现在我宣布这样:

  JDefaultBandwidthMeterClass = interface(JBandwidthMeterClass)
    ['{2B9F65F5-8EAB-466A-9A2E-DDD9CA88F807}']
  end;

  [JavaSignature('com/google/android/exoplayer2/upstream/DefaultBandwidthMeter')]
  JDefaultBandwidthMeter = interface(JBandwidthMeter)
    ['{D6A32707-D8F6-458B-AAB6-926A523D1A95}']
  end;
  TJDefaultBandwidthMeter = class(TJavaGenericImport<JDefaultBandwidthMeterClass, JDefaultBandwidthMeter>) end;

但问题是这个声明并不关心TransferListener,也不适用于以下函数:

public DefaultDataSourceFactory(TransferListener<? super DataSource> listener) { 
  ...
}

那我该怎么办?

0 个答案:

没有答案