2010-02-23 5 views
3

Я видел проект Loom, но есть ли альтернативы, которые более зрелые (и активно развитые)? Я ищу что-то, что позволило бы время загрузки плетения точек в существующий двоичный код во время выполнения с временем выполнения AVM2.Проект Active Flash/Flex/ActionScript 3 AOP?

Проделана ли какая-либо работа в этой области?

+1

Я не уверен, что кто-то использовал Floxy/Flemit для плетения и но я хотел бы работать с вами, чтобы сделать это. Напишите мне, если вы хотите сотрудничать с jaward в adobe dot com. –

ответ

2

Как автор flemit/floxy (хотя оба были созданы только для asmock), я бы рекомендовал смотреть в AS3Commons Bytecode как он находится на стадии активного развития (flemit/floxy не).

AS3Commons Bytecode фактически основан на проекте Loom и был расширен, чтобы использовать намного более чистый API, чем когда-либо планировалось использовать flemit.

3

Я знаю, что я немного опоздал на вечеринку здесь, но я только что собрал действительно простой проект АОП для интеграции с Петрушкой.

Это позволяет назначать метатеги для перехватчиков, например, так:

<parsley:ContextBuilder> 
     <parsley:FlexConfig type="{ParsleyConfig}" /> 
     <tag:AspectSupport> 
      <tag:MetatagInterceptorDefinition metatag="Log" interceptor="{new TracingInterceptor()}" /> 
     </tag:AspectSupport>    
    </parsley:ContextBuilder> 

Затем, любые классы в контексте Петрушка, которые аннотированный с Log получить этот метод прокси-соединение:

[Log] 
    public function add(a:int,b:int):int 
    { 
     return a + b; 
    } 

Проект это here и более подробное сообщение в блоге: here

+0

Это выглядит интересно. Насколько глубока зависимость от петрушки? Мы используем Robotlegs, и мне интересно, можно ли изменить ваш проект для работы с ним? – Borek

+0

Это больше зависит от петрушки, чем должно быть. Я намеревался построить версию, которая работала с Swiz, но если спрос на RobotLegs больше, то я мог бы посмотреть на это в первую очередь. Я добавил проблему, чтобы служить точкой обсуждения: http://bit.ly/eB70kb –

+0

Вышеупомянутый подход основан не на перекодировании байтового кода AVM2, так? Он использует прокси. –

Смежные вопросы