github.com/Files-com/files-sdk-go/v3@v3.1.81/sftpactionlog.go (about)

     1  package files_sdk
     2  
     3  import (
     4  	"encoding/json"
     5  	"time"
     6  
     7  	lib "github.com/Files-com/files-sdk-go/v3/lib"
     8  )
     9  
    10  type SftpActionLog struct {
    11  	Timestamp           *time.Time `json:"timestamp,omitempty" path:"timestamp,omitempty" url:"timestamp,omitempty"`
    12  	RemoteIp            string     `json:"remote_ip,omitempty" path:"remote_ip,omitempty" url:"remote_ip,omitempty"`
    13  	ServerIp            string     `json:"server_ip,omitempty" path:"server_ip,omitempty" url:"server_ip,omitempty"`
    14  	Username            string     `json:"username,omitempty" path:"username,omitempty" url:"username,omitempty"`
    15  	SessionUuid         string     `json:"session_uuid,omitempty" path:"session_uuid,omitempty" url:"session_uuid,omitempty"`
    16  	SeqId               int64      `json:"seq_id,omitempty" path:"seq_id,omitempty" url:"seq_id,omitempty"`
    17  	AuthMethod          string     `json:"auth_method,omitempty" path:"auth_method,omitempty" url:"auth_method,omitempty"`
    18  	AuthCiphers         string     `json:"auth_ciphers,omitempty" path:"auth_ciphers,omitempty" url:"auth_ciphers,omitempty"`
    19  	ActionType          string     `json:"action_type,omitempty" path:"action_type,omitempty" url:"action_type,omitempty"`
    20  	Path                string     `json:"path,omitempty" path:"path,omitempty" url:"path,omitempty"`
    21  	TruePath            string     `json:"true_path,omitempty" path:"true_path,omitempty" url:"true_path,omitempty"`
    22  	Name                string     `json:"name,omitempty" path:"name,omitempty" url:"name,omitempty"`
    23  	SftpResponseCode    string     `json:"sftp_response_code,omitempty" path:"sftp_response_code,omitempty" url:"sftp_response_code,omitempty"`
    24  	SftpResponseMessage string     `json:"sftp_response_message,omitempty" path:"sftp_response_message,omitempty" url:"sftp_response_message,omitempty"`
    25  	Md5                 string     `json:"md5,omitempty" path:"md5,omitempty" url:"md5,omitempty"`
    26  	Size                string     `json:"size,omitempty" path:"size,omitempty" url:"size,omitempty"`
    27  	DataLength          string     `json:"data_length,omitempty" path:"data_length,omitempty" url:"data_length,omitempty"`
    28  	EntriesReturned     int64      `json:"entries_returned,omitempty" path:"entries_returned,omitempty" url:"entries_returned,omitempty"`
    29  	Success             string     `json:"success,omitempty" path:"success,omitempty" url:"success,omitempty"`
    30  	DurationMs          int64      `json:"duration_ms,omitempty" path:"duration_ms,omitempty" url:"duration_ms,omitempty"`
    31  }
    32  
    33  func (s SftpActionLog) Identifier() interface{} {
    34  	return s.Path
    35  }
    36  
    37  type SftpActionLogCollection []SftpActionLog
    38  
    39  type SftpActionLogListParams struct {
    40  	Filter       SftpActionLog          `url:"filter,omitempty" required:"false" json:"filter,omitempty" path:"filter"`
    41  	FilterPrefix map[string]interface{} `url:"filter_prefix,omitempty" required:"false" json:"filter_prefix,omitempty" path:"filter_prefix"`
    42  	ListParams
    43  }
    44  
    45  func (s *SftpActionLog) UnmarshalJSON(data []byte) error {
    46  	type sftpActionLog SftpActionLog
    47  	var v sftpActionLog
    48  	if err := json.Unmarshal(data, &v); err != nil {
    49  		return lib.ErrorWithOriginalResponse{}.ProcessError(data, err, map[string]interface{}{})
    50  	}
    51  
    52  	*s = SftpActionLog(v)
    53  	return nil
    54  }
    55  
    56  func (s *SftpActionLogCollection) UnmarshalJSON(data []byte) error {
    57  	type sftpActionLogs SftpActionLogCollection
    58  	var v sftpActionLogs
    59  	if err := json.Unmarshal(data, &v); err != nil {
    60  		return lib.ErrorWithOriginalResponse{}.ProcessError(data, err, []map[string]interface{}{})
    61  	}
    62  
    63  	*s = SftpActionLogCollection(v)
    64  	return nil
    65  }
    66  
    67  func (s *SftpActionLogCollection) ToSlice() *[]interface{} {
    68  	ret := make([]interface{}, len(*s))
    69  	for i, v := range *s {
    70  		ret[i] = v
    71  	}
    72  
    73  	return &ret
    74  }