示例#1
0
 public PropertyEvents(Arebis.CodeGeneration.IGenerationHost _host, IZetboxContext ctx, string eventName, string propType, string objType, bool hasGetters, bool hasSetters)
     : base(_host)
 {
     this.ctx        = ctx;
     this.eventName  = eventName;
     this.propType   = propType;
     this.objType    = objType;
     this.hasGetters = hasGetters;
     this.hasSetters = hasSetters;
 }
示例#2
0
 public ValueCollectionEntryParentReference(Arebis.CodeGeneration.IGenerationHost _host, IZetboxContext ctx, Zetbox.Generator.Templates.Serialization.SerializationMembersList serializationList, string referencedInterface, string propertyName, string moduleNamespace, bool disableExport)
     : base(_host)
 {
     this.ctx = ctx;
     this.serializationList   = serializationList;
     this.referencedInterface = referencedInterface;
     this.propertyName        = propertyName;
     this.moduleNamespace     = moduleNamespace;
     this.disableExport       = disableExport;
 }
示例#3
0
        public static void Call(Arebis.CodeGeneration.IGenerationHost host,
                                IZetboxContext ctx, Serialization.SerializationMembersList serializationList, Property prop)
        {
            if (host == null)
            {
                throw new ArgumentNullException("host");
            }

            host.CallTemplate("Properties.NotifyingDataProperty",
                              ctx, serializationList, prop);
        }
示例#4
0
        public static new void Call(Arebis.CodeGeneration.IGenerationHost host, IZetboxContext ctx, DataType implementor, Zetbox.App.Base.Method m, int index)
        {
            if (host == null)
            {
                throw new ArgumentNullException("host");
            }
            string indexSuffix = index == 0 ? String.Empty : index.ToString();
            string eventName   = "On" + m.Name + indexSuffix + "_" + implementor.Name;

            host.CallTemplate("ObjectClasses.InvokeServerMethod", ctx, implementor, m, index, indexSuffix, eventName);
        }
示例#5
0
 public static void Call(Arebis.CodeGeneration.IGenerationHost host,
                         IZetboxContext ctx,
                         Templates.Serialization.SerializationMembersList serializationList,
                         ValueTypeProperty prop)
 {
     if (prop == null)
     {
         throw new ArgumentNullException("prop");
     }
     Call(host, ctx, serializationList, prop, prop.HasPersistentOrder, prop.IsList, !prop.HasPersistentOrder);
 }
示例#6
0
 public SimplePropertySerialization(Arebis.CodeGeneration.IGenerationHost _host, IZetboxContext ctx, SerializerDirection direction, string streamName, string xmlnamespace, string xmlname, string memberType, string memberName)
     : base(_host)
 {
     this.ctx          = ctx;
     this.direction    = direction;
     this.streamName   = streamName;
     this.xmlnamespace = xmlnamespace;
     this.xmlname      = xmlname;
     this.memberType   = memberType;
     this.memberName   = memberName;
 }
示例#7
0
 public EnumBinarySerialization(Arebis.CodeGeneration.IGenerationHost _host, IZetboxContext ctx, SerializerDirection direction, string streamName, string xmlnamespace, string xmlname, string backingStoreName, string enumerationType)
     : base(_host)
 {
     this.ctx              = ctx;
     this.direction        = direction;
     this.streamName       = streamName;
     this.xmlnamespace     = xmlnamespace;
     this.xmlname          = xmlname;
     this.backingStoreName = backingStoreName;
     this.enumerationType  = enumerationType;
 }
示例#8
0
        public static void Call(Arebis.CodeGeneration.IGenerationHost host,
                                IZetboxContext ctx, Serialization.SerializationMembersList serializationList, string backingName)
        {
            if (host == null)
            {
                throw new ArgumentNullException("host");
            }

            host.CallTemplate("Properties.ExportGuidProperty",
                              ctx, serializationList, backingName);
        }
示例#9
0
        public static void Call(Arebis.CodeGeneration.IGenerationHost host, IZetboxContext ctx, ObjectClass cls, string ifName, string implName)
        {
            if (host == null)
            {
                throw new ArgumentNullException("host");
            }

            string propertyDescriptorName = host.Settings["propertydescriptorname"];

            host.CallTemplate("ObjectClasses.CustomTypeDescriptor", ctx, cls, ifName, implName, propertyDescriptorName);
        }
示例#10
0
 public ObjectReferencePropertySerialization(Arebis.CodeGeneration.IGenerationHost _host, IZetboxContext ctx, SerializerDirection direction, string streamName, string xmlnamespace, string xmlname, string sourceMember, string targetMember, string targetGuidMember)
     : base(_host)
 {
     this.ctx              = ctx;
     this.direction        = direction;
     this.streamName       = streamName;
     this.xmlnamespace     = xmlnamespace;
     this.xmlname          = xmlname;
     this.sourceMember     = sourceMember;
     this.targetMember     = targetMember;
     this.targetGuidMember = targetGuidMember;
 }
示例#11
0
 public CollectionSerialization(Arebis.CodeGeneration.IGenerationHost _host, IZetboxContext ctx, SerializerDirection direction, string streamName, string xmlnamespace, string xmlname, string collectionName, bool orderByValue, bool disableExport)
     : base(_host)
 {
     this.ctx            = ctx;
     this.direction      = direction;
     this.streamName     = streamName;
     this.xmlnamespace   = xmlnamespace;
     this.xmlname        = xmlname;
     this.collectionName = collectionName;
     this.orderByValue   = orderByValue;
     this.disableExport  = disableExport;
 }
示例#12
0
 public ReloadOneReference(Arebis.CodeGeneration.IGenerationHost _host, IZetboxContext ctx, string referencedInterface, string referencedImplementation, string name, string implNameUnused, string fkBackingName, string fkGuidBackingName, bool isExportable)
     : base(_host)
 {
     this.ctx = ctx;
     this.referencedInterface      = referencedInterface;
     this.referencedImplementation = referencedImplementation;
     this.name              = name;
     this.implNameUnused    = implNameUnused;
     this.fkBackingName     = fkBackingName;
     this.fkGuidBackingName = fkGuidBackingName;
     this.isExportable      = isExportable;
 }
示例#13
0
 public NotifyingValueProperty(Arebis.CodeGeneration.IGenerationHost _host, IZetboxContext ctx, Serialization.SerializationMembersList serializationList, string type, string name, string modulenamespace, string backingName, bool isCalculated, bool disableExport)
     : base(_host)
 {
     this.ctx = ctx;
     this.serializationList = serializationList;
     this.type            = type;
     this.name            = name;
     this.modulenamespace = modulenamespace;
     this.backingName     = backingName;
     this.isCalculated    = isCalculated;
     this.disableExport   = disableExport;
 }
示例#14
0
 public EagerLoadingSerialization(Arebis.CodeGeneration.IGenerationHost _host, IZetboxContext ctx, SerializerDirection direction, string streamName, string xmlnamespace, string xmlname, string collectionName, bool serializeIds, bool serializeRelationEntries)
     : base(_host)
 {
     this.ctx                      = ctx;
     this.direction                = direction;
     this.streamName               = streamName;
     this.xmlnamespace             = xmlnamespace;
     this.xmlname                  = xmlname;
     this.collectionName           = collectionName;
     this.serializeIds             = serializeIds;
     this.serializeRelationEntries = serializeRelationEntries;
 }
示例#15
0
 public CalculatedProperty(Arebis.CodeGeneration.IGenerationHost _host, IZetboxContext ctx, Serialization.SerializationMembersList serializationList, string modulenamespace, string className, string referencedType, string propertyName, string getterEventName, bool isCompound, bool disableExport)
     : base(_host)
 {
     this.ctx = ctx;
     this.serializationList = serializationList;
     this.modulenamespace   = modulenamespace;
     this.className         = className;
     this.referencedType    = referencedType;
     this.propertyName      = propertyName;
     this.getterEventName   = getterEventName;
     this.isCompound        = isCompound;
     this.disableExport     = disableExport;
 }
示例#16
0
 public ComputeDefaultValue(Arebis.CodeGeneration.IGenerationHost _host, IZetboxContext ctx, string interfaceName, string className, string propertyName, bool isNullable, string isSetFlagName, Guid propertyGuid, string backingStoreType, string backingStoreName)
     : base(_host)
 {
     this.ctx              = ctx;
     this.interfaceName    = interfaceName;
     this.className        = className;
     this.propertyName     = propertyName;
     this.isNullable       = isNullable;
     this.isSetFlagName    = isSetFlagName;
     this.propertyGuid     = propertyGuid;
     this.backingStoreType = backingStoreType;
     this.backingStoreName = backingStoreName;
 }
示例#17
0
 public ValueTypePropertyHbm(Arebis.CodeGeneration.IGenerationHost _host, string prefix, string propName, string columnName, bool isList, string typeAttr, string ceClassAttr, string ceReverseKeyColumnName, string listPositionColumnName, bool optimisticLock)
     : base(_host)
 {
     this.prefix                 = prefix;
     this.propName               = propName;
     this.columnName             = columnName;
     this.isList                 = isList;
     this.typeAttr               = typeAttr;
     this.ceClassAttr            = ceClassAttr;
     this.ceReverseKeyColumnName = ceReverseKeyColumnName;
     this.listPositionColumnName = listPositionColumnName;
     this.optimisticLock         = optimisticLock;
 }
示例#18
0
 public CompoundObjectSerialization(Arebis.CodeGeneration.IGenerationHost _host, IZetboxContext ctx, SerializerDirection direction, string streamName, string xmlnamespace, string xmlname, string memberType, string memberName, string backingStoreType, string backingStoreName)
     : base(_host)
 {
     this.ctx              = ctx;
     this.direction        = direction;
     this.streamName       = streamName;
     this.xmlnamespace     = xmlnamespace;
     this.xmlname          = xmlname;
     this.memberType       = memberType;
     this.memberName       = memberName;
     this.backingStoreType = backingStoreType;
     this.backingStoreName = backingStoreName;
 }
示例#19
0
 public static void Call(Arebis.CodeGeneration.IGenerationHost host,
                         IZetboxContext ctx,
                         Serialization.SerializationMembersList serializationList,
                         ValueTypeProperty prop,
                         string collectionWrapperClass,
                         string listWrapperClass)
 {
     if (prop == null)
     {
         throw new ArgumentNullException("prop");
     }
     Call(host, ctx, serializationList, prop, prop.HasPersistentOrder, prop.IsList, collectionWrapperClass, listWrapperClass);
 }
示例#20
0
 public CompoundObjectPropertyTemplate(Arebis.CodeGeneration.IGenerationHost _host, IZetboxContext ctx, Zetbox.Generator.Templates.Serialization.SerializationMembersList serializationList, string xmlNamespace, string propName, string backingPropertyName, string backingStoreName, string coType, string coImplementationType, bool disableExport)
     : base(_host)
 {
     this.ctx = ctx;
     this.serializationList   = serializationList;
     this.xmlNamespace        = xmlNamespace;
     this.propName            = propName;
     this.backingPropertyName = backingPropertyName;
     this.backingStoreName    = backingStoreName;
     this.coType = coType;
     this.coImplementationType = coImplementationType;
     this.disableExport        = disableExport;
 }
示例#21
0
        public static void Call(Arebis.CodeGeneration.IGenerationHost host,
                                IZetboxContext ctx, Serialization.SerializationMembersList serializationList,
                                string type, string name, string modulenamespace, bool isCalculated, bool disableExport)
        {
            if (host == null)
            {
                throw new ArgumentNullException("host");
            }

            string backingName = "_" + name;

            Call(host, ctx, serializationList, type, name, modulenamespace, backingName, isCalculated, disableExport);
        }
示例#22
0
 public CollectionSerialization(
     Arebis.CodeGeneration.IGenerationHost _host,
     IZetboxContext ctx,
     Templates.Serialization.SerializerDirection direction,
     string streamName,
     string xmlnamespace,
     string xmlname,
     string collectionName,
     bool orderByValue,
     bool disableExport)
     : base(_host, ctx, direction, streamName, xmlnamespace, xmlname, collectionName, orderByValue, disableExport)
 {
 }
示例#23
0
 public CompoundObjectPropertyHbm(Arebis.CodeGeneration.IGenerationHost _host, IZetboxContext ctx, string prefix, string propName, string columnName, bool isList, string ceClassAttr, string valueClassAttr, string isNullColumnAttr, string ceReverseKeyColumnName, IEnumerable <Property> properties)
     : base(_host)
 {
     this.ctx                    = ctx;
     this.prefix                 = prefix;
     this.propName               = propName;
     this.columnName             = columnName;
     this.isList                 = isList;
     this.ceClassAttr            = ceClassAttr;
     this.valueClassAttr         = valueClassAttr;
     this.isNullColumnAttr       = isNullColumnAttr;
     this.ceReverseKeyColumnName = ceReverseKeyColumnName;
     this.properties             = properties;
 }
示例#24
0
        public static void Call(Arebis.CodeGeneration.IGenerationHost host,
                                IZetboxContext ctx,
                                Templates.Serialization.SerializationMembersList serializationList,
                                CompoundObjectProperty prop)
        {
            if (prop == null)
            {
                throw new ArgumentNullException("prop");
            }

            // CompoundObjects cannot be compared, therefore we have to avoid sorting the list here
            // although it would be required to keep the exported collection stable
            // TODO: implement a comparer for COs using a DefaultSortOrder property(-list) to re-enable this
            Call(host, ctx, serializationList, prop, prop.HasPersistentOrder, prop.IsList, false);
        }
示例#25
0
 public ObjectListProperty(Arebis.CodeGeneration.IGenerationHost _host, IZetboxContext ctx, Zetbox.Generator.Templates.Serialization.SerializationMembersList serializationList, string name, string wrapperName, string wrapperClass, string exposedListType, Relation rel, RelationEndRole endRole, string positionPropertyName, string otherName, string referencedInterface)
     : base(_host)
 {
     this.ctx = ctx;
     this.serializationList = serializationList;
     this.name                 = name;
     this.wrapperName          = wrapperName;
     this.wrapperClass         = wrapperClass;
     this.exposedListType      = exposedListType;
     this.rel                  = rel;
     this.endRole              = endRole;
     this.positionPropertyName = positionPropertyName;
     this.otherName            = otherName;
     this.referencedInterface  = referencedInterface;
 }
示例#26
0
 public ObjectClassHbm(Arebis.CodeGeneration.IGenerationHost _host, IZetboxContext ctx, string interfaceName, string implementationName, string schemaName, string tableName, string qualifiedImplementationName, bool isAbstract, List <Property> properties, List <ObjectClass> subClasses, bool needsRightsTable, bool needsConcurrency, string qualifiedRightsClassName)
     : base(_host)
 {
     this.ctx                         = ctx;
     this.interfaceName               = interfaceName;
     this.implementationName          = implementationName;
     this.schemaName                  = schemaName;
     this.tableName                   = tableName;
     this.qualifiedImplementationName = qualifiedImplementationName;
     this.isAbstract                  = isAbstract;
     this.properties                  = properties;
     this.subClasses                  = subClasses;
     this.needsRightsTable            = needsRightsTable;
     this.needsConcurrency            = needsConcurrency;
     this.qualifiedRightsClassName    = qualifiedRightsClassName;
 }
示例#27
0
        public static void Call(Arebis.CodeGeneration.IGenerationHost host,
                                IZetboxContext ctx,
                                Templates.Serialization.SerializationMembersList serializationList,
                                Relation rel, RelationEndRole endRole)
        {
            if (rel == null)
            {
                throw new ArgumentNullException("rel");
            }

            RelationEnd relEnd   = rel.GetEndFromRole(endRole);
            RelationEnd otherEnd = rel.GetOtherEnd(relEnd);

            string backingCollectionType = RelationToBackingCollectionType(rel, otherEnd);

            Call(host, ctx, serializationList, rel, endRole, backingCollectionType);
        }
示例#28
0
 public CollectionEntryListProperty(Arebis.CodeGeneration.IGenerationHost _host, IZetboxContext ctx, Serialization.SerializationMembersList serializationList, string name, string exposedCollectionInterface, string referencedInterface, string backingName, string backingCollectionType, string aSideType, string bSideType, string entryType, string providerCollectionType, Guid relId, RelationEndRole role, bool eagerLoading)
     : base(_host)
 {
     this.ctx = ctx;
     this.serializationList = serializationList;
     this.name = name;
     this.exposedCollectionInterface = exposedCollectionInterface;
     this.referencedInterface        = referencedInterface;
     this.backingName            = backingName;
     this.backingCollectionType  = backingCollectionType;
     this.aSideType              = aSideType;
     this.bSideType              = bSideType;
     this.entryType              = entryType;
     this.providerCollectionType = providerCollectionType;
     this.relId        = relId;
     this.role         = role;
     this.eagerLoading = eagerLoading;
 }
示例#29
0
        public static void Call(
            Arebis.CodeGeneration.IGenerationHost host, IZetboxContext ctx,
            Serialization.SerializationMembersList serializationList,
            CompoundObjectProperty prop)
        {
            if (host == null)
            {
                throw new ArgumentNullException("host");
            }
            if (prop == null)
            {
                throw new ArgumentNullException("prop");
            }

            string propName = prop.Name;

            Call(host, ctx, serializationList, prop, propName, prop.IsList, prop.HasPersistentOrder);
        }
示例#30
0
        public static void Call(Arebis.CodeGeneration.IGenerationHost host,
                                IZetboxContext ctx,
                                Property prop)
        {
            if (host == null)
            {
                throw new ArgumentNullException("host");
            }
            if (prop == null)
            {
                throw new ArgumentNullException("prop");
            }

            string eventName = "On" + prop.Name + "_PostSetter";
            string objType   = prop.ObjectClass.GetDataTypeString();

            Call(host, ctx, eventName, objType);
        }