syntax = "proto3";

package devpath_plugin;

// Key specifies selection criteria for matching a Redfish Request to a UHM
// component.
message Key {
  // Pattern representing the Redfish URL to match (e.g.
  // "/redfish/v1/Systems/system1/Memory/dimm[0-9]+"). Required.
  string redfish_url_pattern = 1;

  // Specific constraint to narrow the match. At most one should be set.
  oneof condition {
    int32 bus = 2;
    string location_code = 3;
    string assembly_name = 4;
  }
}

// UhmMonitoredComponentKey is a key to uniquely identify a UHM monitored
// component.
message UhmMonitoredComponentKey {
  // The unique physical location base path. Required.
  string barepath = 1;
}

// RedfishExposeConfig controls devpath replication values in Redfish responses.
message RedfishExposeConfig {
  bool expose_oem_google_devpath = 1;
  bool set_plc_as_placeholder = 2;
  string embedded_location_context = 3;
}

// Individual Redfish to UHM entry.
message RedfishToUhmMapping {
  Key key = 1;
  UhmMonitoredComponentKey uhm_monitored_component_key = 2;
  RedfishExposeConfig redfish_expose_config = 3;
}

// The top-level configuration message containing all mapping configurations.
message RedfishToUhmMappingConfig {
  repeated RedfishToUhmMapping redfish_to_uhm_mapping = 1;
}
