예제 #1
0
파일: Apigen.cs 프로젝트: claribou/Marvin
        public void EmitContentHeaderFactory(MethodInfo method)
        {
            AmqpContentHeaderFactoryAttribute factoryAnnotation = (AmqpContentHeaderFactoryAttribute)
                                                                  Attribute(method, typeof(AmqpContentHeaderFactoryAttribute));
            string contentClass = factoryAnnotation.m_contentClass;

            EmitModelMethodPreamble(method);
            EmitLine("    {");
            EmitLine("      return new " + MangleClass(contentClass) + "Properties();");
            EmitLine("    }");
        }
예제 #2
0
파일: Apigen.cs 프로젝트: claribou/Marvin
 public bool HasFactoryMethod(AmqpClass c)
 {
     foreach (Type t in m_modelTypes)
     {
         foreach (MethodInfo method in t.GetMethods())
         {
             AmqpContentHeaderFactoryAttribute f = (AmqpContentHeaderFactoryAttribute)
                                                   Attribute(method, typeof(AmqpContentHeaderFactoryAttribute));
             if (f != null && MangleClass(f.m_contentClass) == MangleClass(c.Name))
             {
                 return(true);
             }
         }
     }
     return(false);
 }