in src/terraform/providers/terraform-provider-avere/resource_vfxt.go [2213:2273]
func resourceAvereVfxtCoreFilerReferenceHash(v interface{}) int {
var buf bytes.Buffer
if m, ok := v.(map[string]interface{}); ok {
if v, ok := m[core_filer_name]; ok {
buf.WriteString(fmt.Sprintf("%s;", v.(string)))
}
if v, ok := m[fqdn_or_primary_ip]; ok {
buf.WriteString(fmt.Sprintf("%s;", v.(string)))
}
if v, ok := m[filer_class]; ok {
buf.WriteString(fmt.Sprintf("%s;", v.(string)))
}
if v, ok := m[cache_policy]; ok {
buf.WriteString(fmt.Sprintf("%s;", v.(string)))
}
if v, ok := m[auto_wan_optimize]; ok {
buf.WriteString(fmt.Sprintf("%v;", v.(bool)))
}
if v, ok := m[nfs_connection_multiplier]; ok {
buf.WriteString(fmt.Sprintf("%v;", v.(int)))
}
if v, ok := m[ordinal]; ok {
buf.WriteString(fmt.Sprintf("%d;", v.(int)))
}
if v, ok := m[custom_settings]; ok {
buf.WriteString(fmt.Sprintf("%s;", v.(*schema.Set).List()))
}
if v, ok := m[junction].(*schema.Set); ok {
for _, j := range v.List() {
if m, ok := j.(map[string]interface{}); ok {
if v2, ok := m[namespace_path]; ok {
buf.WriteString(fmt.Sprintf("%s;", v2.(string)))
}
if v2, ok := m[core_filer_export]; ok {
buf.WriteString(fmt.Sprintf("%s;", v2.(string)))
}
if v2, ok := m[export_subdirectory]; ok {
buf.WriteString(fmt.Sprintf("%s;", v2.(string)))
}
if v2, ok := m[export_rule]; ok {
buf.WriteString(fmt.Sprintf("%s;", v2.(string)))
}
if v2, ok := m[cifs_share_name]; ok {
buf.WriteString(fmt.Sprintf("%s;", v2.(string)))
}
if v2, ok := m[cifs_share_ace]; ok {
buf.WriteString(fmt.Sprintf("%s;", v2.(string)))
}
if v2, ok := m[cifs_create_mask]; ok {
buf.WriteString(fmt.Sprintf("%s;", v2.(string)))
}
if v2, ok := m[cifs_dir_mask]; ok {
buf.WriteString(fmt.Sprintf("%s;", v2.(string)))
}
}
}
}
}
return String(buf.String())
}