Documentation ¶
Index ¶
- Constants
- func ReadExcel(excelPath string) (*xlsx.File, error)
- type UserDefinedFunction
- type VariableHolder
- func (v *VariableHolder) ConvertXslToJSON(sheet *xlsx.Sheet, structReference interface{}, childrenArrayKey string) (interface{}, error)
- func (v *VariableHolder) GetCurrentNode() interface{}
- func (v *VariableHolder) GetCurrentNodeChildrenStatus() bool
- func (v *VariableHolder) GetCurrentNodeLevel() int
- func (v *VariableHolder) GetParentNodeForChild() interface{}
- func (v *VariableHolder) SetExcelHeaderRowIndexNo(indexNo int)
- func (v *VariableHolder) SetInputParametersToUserDefinedFunc(key string, value interface{})
- func (v *VariableHolder) SetKeyFunctionMap(structKey string, bindingFunction UserDefinedFunction)
- func (v *VariableHolder) SetListStringSeperator(seperator string)
- func (v *VariableHolder) SetNodesColumnNameMap(nodeNameColumnList []string) error
Constants ¶
const ( ERR_CODE_EXCEL_NOT_OPEN = "EXCEL_CANNOT_BE_OPENED" ERR_CODE_EXCEL_SHEET_EMPTY = "EXCEL_SHEET_EMPTY" ERR_CODE_SHEET_HEADER_ROW_EMPTY = "EXCEL_SHEET_HEADER_ROW_EMPTY" ERR_CODE_MAP_RECEIVED_EMPTY = "EMPTY_STRUCT_XSL_MAP_RECEIVED" ERR_CODE_NODE_COLUMN_NAME_NOT_PRESENT_IN_MAP = "NODE_COLUMN_NAME_NOT_PRESENT_IN_MAP" ERR_CODE_HEADER_EMPTY = "EXCEL_HEADER_EMPTY" ERR_CODE_UNABLE_TO_SET_STRUCT_INFO = "UNABLE_TO_SET_STRUCT_INFO" ERR_CODE_INCORRECT_NUMBER_OF_ATTRIBUTE_SET = "NUMBER_OF_KEYS_IN_STRUCT_AND_SetAttributeMappingMap_MISMATCHED" ERR_CODE_CHILDREN_ARRAY_KEY_NOT_SET = "CHILDREN_ARRAY_KEY_NOT_SET_IN_SetKeyToAppendChildrenNodes" ERR_CODE_KEYS_COUNT_MISMATCHED_IN_INPUT_SEND_TO_SETATTRIBUTEMAPPINGMAP = "HEADER_ROW_COLUMN_AND_MAP_KEYS_COUNT_MISMATCHED_IN_INPUT_SEND_TO_SetAttributeMappingMap" ERR_CODE_KEYS_MISMATCHED_IN_ATTRIBUTEMAPPINGMAP = "KEYS_MISMATCHED_IN_INPUT_SEND_TO_SetAttributeMappingMap" ERR_CODE_KEYS_MISMATCHED_IN_STRUCTKEYVALUEMAP = "KEYS_MISMATCHED_IN_INPUT_SEND_TO_SetAttributeMappingMap_AND_struct" ERR_CODE_INTERFACE_RECEIVED_IS_NOT_STRUCT = "INTERFACE_RECEIVED_IS_NOT_STRUCT" ERR_CODE_DATE_FORMAT_PARSING_ERROR = "DATE_FORMAT_PARSING_ERROR" ERR_CODE_USERDEFINED_FUNCTION_RETURN_VALUE_AND_STRUCT_KEY_TYPE_MISMATCH = "USERDEFINED_FUNCTION_RETURN_VALUE_AND_STRUCT_KEY_TYPE_MISMATCH" ERR_CODE_KEY_NOT_PRESENT_IN_STRUCT = "KEY_NOT_PRESENT_IN_EXCEL" ERR_CODE_EMPTY_LIST_RECEIVED = "EMPTY_LIST_RECEIVED" )
Defined Error constant
const ( //EMPTY_STR - empty string EMPTY_STR = "" // DEFAULT_LIST_STRING_SEPERATOR - default seperator DEFAULT_LIST_STRING_SEPERATOR = "," //DEFAULT_DATE_FORMAT - default layout to parse time value DEFAULT_DATE_FORMAT_LAYOUT = "01-02-2006" //DEFAULT_HEADER_ROW_INDEX - default index of header row DEFAULT_HEADER_ROW_INDEX = 0 //OPEN_CLOSE_SQUARE_BRACKET - constant for reflect type squrare bracket opening and closing square bracket OPEN_CLOSE_SQUARE_BRACKET = "[]" //STRING - constant for reflect type string STRING = "string" //INT - constant for reflect type int INT = "int" //INT8 - constant for reflect type int8 INT8 = "int8" //INT32 - constant for reflect type int32 INT32 = "int32" //INT64 - constant for reflect type int64 INT64 = "int64" //FLOAT32 - constant for reflect type float32 FLOAT32 = "float32" //FLOAT64 - constant for reflect type float64 FLOAT64 = "float64" //BOOLEAN - constant for reflect type bool BOOLEAN = "bool" //STRUCT - constant for reflect Kind bool STRUCT = "struct" //SLICE - constant for reflect Kind slice SLICE = "slice" // TIME_DOT_TIME - constanst for reflect type time.time TIME_DOT_TIME = "time.Time" //INT_SLICE - constant for reflect type slice of int ([]int) INT_SLICE = OPEN_CLOSE_SQUARE_BRACKET + INT //INT8_SLICE - constant for reflect type slice of int8 ([]int8) INT8_SLICE = OPEN_CLOSE_SQUARE_BRACKET + INT8 //INT32_SLICE - constant for reflect type slice of int32 ([]int32) INT32_SLICE = OPEN_CLOSE_SQUARE_BRACKET + INT32 //INT64_SLICE - constant for reflect type slice of int64 ([]int64) INT64_SLICE = OPEN_CLOSE_SQUARE_BRACKET + INT64 //FLOAT_32SLICE - constant for reflect type slice of float32 ([]float32) FLOAT32_SLICE = OPEN_CLOSE_SQUARE_BRACKET + FLOAT32 //INT64_SLICE - constant for reflect type slice of float64 ([]float64) FLOAT64_SLICE = OPEN_CLOSE_SQUARE_BRACKET + FLOAT64 //STRING_SLICE - constant for reflect type slice of string ([]string) STRING_SLICE = OPEN_CLOSE_SQUARE_BRACKET + STRING //BOOLEAN_SLICE - constant for reflect type slice of bool ([]bool) BOOLEAN_SLICE = OPEN_CLOSE_SQUARE_BRACKET + BOOLEAN // NODE FLAGS - indicate level of flag APPEND_NODE_AT_START_LEVEL = "APPEND_NODE_AT_START_LEVEL" APPEND_NODE_AT_NEXT_LEVEL = "APPEND_NODE_AT_NEXT_LEVEL" APPEND_NODE_AT_PREVIOUS_LEVEL = "APPEND_NODE_AT_PREVIOUS_LEVEL" APPEND_NODE_AT_SAME_LEVEL = "APPEND_NODE_AT_SAME_LEVEL" // EXCEL_TAG - tag to be used while mapping excel column key with struct key EXCEL_TAG = "excel" )
Variables ¶
This section is empty.
Functions ¶
Types ¶
type UserDefinedFunction ¶
type UserDefinedFunction func(map[string]interface{}, string, *VariableHolder) (interface{}, error)
UserDefinedFunction - user defined functionality type
type VariableHolder ¶
type VariableHolder struct {
// contains filtered or unexported fields
}
VariableHolder - stores variables required
func GetVariableHolderPtr ¶
func GetVariableHolderPtr() *VariableHolder
GetVariableHolderPtr - returns the VariableHolder instance
func (*VariableHolder) ConvertXslToJSON ¶
func (v *VariableHolder) ConvertXslToJSON(sheet *xlsx.Sheet, structReference interface{}, childrenArrayKey string) (interface{}, error)
ConvertXslToJSON - converts the data from sheet to JSON
func (*VariableHolder) GetCurrentNode ¶
func (v *VariableHolder) GetCurrentNode() interface{}
GetCurrentNode - returns the current node
func (*VariableHolder) GetCurrentNodeChildrenStatus ¶
func (v *VariableHolder) GetCurrentNodeChildrenStatus() bool
GetCurrentNodeChildrenStatus - return true if current node has child
func (*VariableHolder) GetCurrentNodeLevel ¶
func (v *VariableHolder) GetCurrentNodeLevel() int
GetCurrentNodeLevel - returns the current node level
func (*VariableHolder) GetParentNodeForChild ¶
func (v *VariableHolder) GetParentNodeForChild() interface{}
GetParentNodeForChild - returns the parent for current node
func (*VariableHolder) SetExcelHeaderRowIndexNo ¶
func (v *VariableHolder) SetExcelHeaderRowIndexNo(indexNo int)
SetExcelHeaderRowIndexNo - index no of excel header row
func (*VariableHolder) SetInputParametersToUserDefinedFunc ¶
func (v *VariableHolder) SetInputParametersToUserDefinedFunc(key string, value interface{})
SetInputParametersToUserDefinedFunc - sets the input in methodsInputParameterMap that can be used in user defined function
func (*VariableHolder) SetKeyFunctionMap ¶
func (v *VariableHolder) SetKeyFunctionMap(structKey string, bindingFunction UserDefinedFunction)
SetKeyFunctionMap - sets the function to be executed on particular key
func (*VariableHolder) SetListStringSeperator ¶
func (v *VariableHolder) SetListStringSeperator(seperator string)
SetListStringSeperator - used to assgin the seperator to split the string
func (*VariableHolder) SetNodesColumnNameMap ¶
func (v *VariableHolder) SetNodesColumnNameMap(nodeNameColumnList []string) error
SetNodesColumnNameMap - sets the name of column to be searched sends error if map received is empty
Source Files ¶
- addNodeAtNextLevel.go
- addNodeAtPreviousLevel.go
- addNodeAtSameLevel.go
- errorConstants.go
- errorFunctions.go
- excelGetters.go
- excelSetters.go
- excelValidator.go
- functionDefination.go
- treeGenerator.go
- treeGetters.go
- variableHolder.go
- variablesDefinations.go
- variablesGetters.go
- variablesSetters.go
- variablesValidator.go