Domanda

Al momento utilizzo l'iniezione assistita con i parametri denominati come questo:

public interface Factory {
public MyObject create(@Assisted("string1") String string1, @Assisted("string2") String string2);
}
.

funziona alla grande.Ma penso che sia un po 'brutto usare le stringhe come identificatore per i miei parametri.Quello che vorrei fare è quanto segue:

public interface Factory {
public MyObject create(@String1 String string1, @String2 String string2);
}
.

Quindi essenzialmente voglio annotazioni guidate personalizzate.C'è un modo per farlo?

È stato utile?

Soluzione

A mia conoscenza, quello stile delle annotazioni personalizzate @Assisted non esistono come caratteristica;L'unico modo per differenziare i parametri di iniezione assistita dello stesso tipo, come hai detto, per utilizzare le annotazioni denominate @Assisted.

Cosa proponi potrebbe essere implementabile potrebbe essere implementabile, in modo da poter sempre presentare una richiesta di funzionalità sul sito di Guice [1] se pensi che ci sia utile.

Il mio istinto Gut è che non ci sarebbe anche molto valore aggiunto con questo approccio, però, poiché sarebbero stati troppo facilmente confusi con normali annotazioni leganti, mentre l'implicazione dell'annotazione @Assistedè molto diverso.Inoltre, prende una buona quantità di caldaia per definire un tipo di annotazione.

    .
  1. http://code.google.com/p/google-guice/
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top