Interface IInterfaceWriter
Used to write the interface definition for a ICustomObject created with LemonEdge Auto-Code designers
This will create the interface definition in c# code for the custom object, and is used internally by the system to dynamically load custom objects, as well as by tools to provide the code to users
The system needs to create the entity descriptor for the custom object in order to build the interface. This is done via EntityDescriptor.CreateTempFrom(IAddInLoaderHelper,ICustomObject,IEnumerable<ICustomObjectProperty>)Namespace: LemonEdge.API.Core.Writers
Assembly: LemonEdge.API.dll
Syntax
public interface IInterfaceWriter
Methods
AddFileFooterAndCloseNamespaces(ClassFileWriter)
Closes the [LemonEdge.Entities] namespace started by AddFileHeadersAndNamespace(ClassFileWriter)
Declaration
void AddFileFooterAndCloseNamespaces(ClassFileWriter writer)
Parameters
Type | Name | Description |
---|---|---|
ClassFileWriter | writer | The writer to close the namespace on |
AddFileHeadersAndNamespace(ClassFileWriter)
Adds the standard using statements required for the interface definitions code to work correctly in LemonEdge, and starts the namespace [LemonEdge.Entities]
Declaration
void AddFileHeadersAndNamespace(ClassFileWriter writer)
Parameters
Type | Name | Description |
---|---|---|
ClassFileWriter | writer | The writer to add the using statements to |
WriteToFile(ClassFileWriter, EntityDescriptor, IList<ICustomObjectProperty>, Dictionary<ICustomObjectIndex, IEnumerable<ICustomObjectIndexColumn>>)
Write the interface definition for a ICustomObject created with LemonEdge Auto-Code designers to the specified writer
Declaration
void WriteToFile(ClassFileWriter writer, EntityDescriptor descriptor, IList<ICustomObjectProperty> props, Dictionary<ICustomObjectIndex, IEnumerable<ICustomObjectIndexColumn>> indexes)
Parameters
Type | Name | Description |
---|---|---|
ClassFileWriter | writer | The writer to add the generated code to |
EntityDescriptor | descriptor | An entity descriptor describing the ICustomObject. This is done via CreateTempFrom(ICustomObject, IEnumerable<ICustomObjectProperty>) |
IList<ICustomObjectProperty> | props | The custom object properties, used to provide custom attributes and validation to the generated interface |
Dictionary<ICustomObjectIndex, IEnumerable<ICustomObjectIndexColumn>> | indexes |