public CodegenExpression Make( CodegenMethodScope parent, SAIFFInitializeSymbol symbols, CodegenClassScope classScope) { var builder = new SAIFFInitializeBuilder( OP_PACKAGE_NAME + ".select.SelectFactory", GetType(), "select", parent, symbols, classScope); return builder .EventtypesMayNull( "EventTypes", eventTypes) .Constant( "IsSubmitEventBean", submitEventBean) .Constant( "IsIterate", iterate) .Constant( "OriginatingStreamToViewableStream", originatingStreamToViewableStream) .Expression( "FactoryProvider", NewInstance( classNameAIFactoryProvider, symbols.GetAddInitSvc(builder.Method()), NewInstance(classNameFieldsFactoryProvider) )) .Build(); }
public CodegenExpression MakeCodegen( CodegenMethodScope parent, SAIFFInitializeSymbol symbols, CodegenClassScope classScope) { var builder = new SAIFFInitializeBuilder( typeof(MyCountToPatternGuardFactory), GetType(), "GuardFactory", parent, symbols, classScope); return builder.Exprnode("numCountToExpr", numCountToExpr) .Expression("convertor", convertor.MakeAnonymous(builder.Method(), classScope)) .Build(); }
public CodegenExpression MakeCodegen( CodegenMethodScope parent, SAIFFInitializeSymbol symbols, CodegenClassScope classScope) { var builder = new SAIFFInitializeBuilder( typeof(MyFileExistsObserverFactory), GetType(), "observerFactory", parent, symbols, classScope); return builder.Exprnode("filenameExpression", filenameExpression) .Expression("convertor", convertor.MakeAnonymous(builder.Method(), classScope)) .Build(); }
public CodegenExpression Make( CodegenMethodScope parent, SAIFFInitializeSymbol symbols, CodegenClassScope classScope) { var mode = _forge.FactoryMode; if (!(mode is VirtualDataWindowFactoryModeManaged)) { throw new ArgumentException("Unexpected factory mode " + mode); } var managed = (VirtualDataWindowFactoryModeManaged) mode; var injectionStrategy = (InjectionStrategyClassNewInstance) managed.InjectionStrategyFactoryFactory; var factoryField = classScope.AddDefaultFieldUnshared( true, typeof(VirtualDataWindowFactoryFactory), injectionStrategy.GetInitializationExpression(classScope)); var builder = new SAIFFInitializeBuilder( typeof(VirtualDWViewFactory), GetType(), "factory", parent, symbols, classScope); builder .Eventtype("eventType", EventType) .Expression( "factory", ExprDotMethod( factoryField, "CreateFactory", NewInstance(typeof(VirtualDataWindowFactoryFactoryContext)))) .Constant("parameters", _parameterValues) .Expression( "ParameterExpressions", ExprNodeUtilityCodegen.CodegenEvaluators( _validatedParameterExpressions, builder.Method(), GetType(), classScope)) .Constant("NamedWindowName", _namedWindowName) .Expression( "compileTimeConfiguration", SerializerUtil.ExpressionForUserObject(_customConfigs)); return builder.Build(); }
public CodegenExpression GetInitializationExpression(CodegenClassScope classScope) { var symbols = new SAIFFInitializeSymbol(); SAIFFInitializeBuilder builder; CodegenMethod init; if (Clazz != null) { init = classScope.NamespaceScope.InitMethod.MakeChildWithScope(Clazz, GetType(), symbols, classScope) .AddParam( typeof(EPStatementInitServices), EPStatementInitServicesConstants.REF.Ref); builder = new SAIFFInitializeBuilder(Clazz, GetType(), "instance", init, symbols, classScope); } else { init = classScope.NamespaceScope.InitMethod .MakeChildWithScope(FullyQualifiedClassName, GetType(), symbols, classScope) .AddParam( typeof(EPStatementInitServices), EPStatementInitServicesConstants.REF.Ref); builder = new SAIFFInitializeBuilder( FullyQualifiedClassName, GetType(), "instance", init, symbols, classScope); } if (BuilderConsumer != null) { BuilderConsumer.Invoke(builder); } foreach (var constantEntry in _constants) { builder.Constant(constantEntry.Key, constantEntry.Value); } foreach (var exprEntry in _expressions) { builder.Exprnode(exprEntry.Key, exprEntry.Value); } init.Block.MethodReturn(builder.Build()); return LocalMethod(init, EPStatementInitServicesConstants.REF); }
public CodegenExpression Make( CodegenMethodScope parent, SAIFFInitializeSymbol symbols, CodegenClassScope classScope) { var hashes = new ExprNode[_hashKeys.Count]; var hashTypes = new Type[_hashKeys.Count]; for (var i = 0; i < _hashKeys.Count; i++) { hashes[i] = _hashKeys[i].HashKey.KeyExpr; hashTypes[i] = _hashKeyCoercionTypes.CoercionTypes[i]; } var ranges = new QueryGraphValueEntryRangeForge[_rangeKeys.Count]; var rangesTypes = new Type[_rangeKeys.Count]; for (var i = 0; i < _rangeKeys.Count; i++) { ranges[i] = _rangeKeys[i].RangeInfo; rangesTypes[i] = _rangeKeyCoercionTypes.CoercionTypes[i]; } var builder = new SAIFFInitializeBuilder( typeof(SubordTableLookupStrategyFactoryVDW), GetType(), "lookup", parent, symbols, classScope); builder .Expression("indexHashedProps", IndexedPropDesc.MakeArray(_hashAndRanges.HashedProps)) .Expression("indexBtreeProps", IndexedPropDesc.MakeArray(_hashAndRanges.BtreeProps)) .Constant("IsNwOnTrigger", _nwOnTrigger) .Constant("NumOuterStreams", _outerStreams.Length) .Expression( "hashEvals", ExprNodeUtilityCodegen.CodegenEvaluators(hashes, builder.Method(), GetType(), classScope)) .Constant("HashCoercionTypes", hashTypes) .Expression( "rangeEvals", QueryGraphValueEntryRangeForge.MakeArray(ranges, builder.Method(), symbols, classScope)) .Constant("RangeCoercionTypes", rangesTypes); return builder.Build(); }
public CodegenExpression Make( CodegenMethodScope parent, SAIFFInitializeSymbol symbols, CodegenClassScope classScope) { var builder = new SAIFFInitializeBuilder( OP_PACKAGE_NAME + ".eventbussource.EventBusSourceFactory", GetType(), "eventbussource", parent, symbols, classScope); builder.Expression( "filterSpecActivatable", LocalMethod( FilterSpecCompiled.MakeCodegen( builder.Method(), symbols, classScope))) .Constant("IsSubmitEventBean", submitEventBean); return builder.Build(); }
public CodegenExpression Make( CodegenMethodScope parent, SAIFFInitializeSymbol symbols, CodegenClassScope classScope) { var builder = new SAIFFInitializeBuilder( typeof(SubordinateQueryPlanDesc), GetType(), "strategy", parent, symbols, classScope); var numIndex = IndexDescs == null ? 0 : IndexDescs.Length; var indexDescArray = new CodegenExpression[numIndex]; for (var i = 0; i < numIndex; i++) { indexDescArray[i] = IndexDescs[i].Make(builder.Method(), symbols, classScope); } return builder.Expression( "lookupStrategyFactory", LookupStrategyFactory.Make(builder.Method(), symbols, classScope)) .Expression("indexDescs", NewArrayWithInit(typeof(SubordinateQueryIndexDesc), indexDescArray)) .Build(); }