Мета-свойства с заводной? - PullRequest
0 голосов
/ 17 июня 2011

В python (в частности, CherryPy) я могу сделать что-то вроде

class Root(Object):

  def index():
   #some sort of logic here

  index.expose = True

Есть ли что-то похожее на Groovy?

Обновление

Простые объекты CherryPy используют для его эквивалентаконтроллеров, где разработчик украшает или отмечает каждый метод, который должен быть представлен системе маршрутизации URL.В приведенном выше примере (с некоторой дополнительной конфигурацией) свойство .expose сообщает платформе, что индекс должен быть доступен для системы маршрутизации запросов.Специально для моей проблемы я пытаюсь написать словарь данных, который помещает сокращенные пары ключ-значение в простой класс из файла vCard.Так что в идеале что-то вроде

 class Foo {
    @Key("FN")
    def fullName
 }

, где парсер vCard создаст новый экземпляр foo, а затем назначит свойство класса FullName с содержимым «FN».

1 Ответ

0 голосов
/ 17 июня 2011

Проведя еще несколько исследований (Google), я закончил проверять r / Groovy на reddit, и меня привели к этому очень полезному сообщению в блоге

С моей точки зрения, можно использовать аннотации Javaукрасить или разметить методы с расширенной логикой.Так что-то вроде

 class Root {
    @Expose
    void index() {
      #som sort of logic here
    }
 }

А затем используйте аннотации Java для обнаружения аннотации @Expose.

...