getKeyWithNameSpace static method

String getKeyWithNameSpace(
  1. AtKey atKey,
  2. AtClientPreference atClientPreference
)

Accepts AtKey and returns AtKey.key with namespace appended Appends namespace if atKey.metadata.namespaceAware is set to true, else namespace is not appended

Implementation

static String getKeyWithNameSpace(
    AtKey atKey, AtClientPreference atClientPreference) {
  // Do not append namespace for encryption keys.
  if (!(atKey.metadata.namespaceAware)) {
    return atKey.key;
  }
  //Do not append namespace if already appended
  if (atKey.key.substring(atKey.key.lastIndexOf('.') + 1) ==
      atClientPreference.namespace) {
    return atKey.key;
  }
  // If key does not have any namespace, append the namespace to the key.
  if (atKey.namespace.isNotNull) {
    return '${atKey.key}.${atKey.namespace!}';
  }
  if (atClientPreference.namespace.isNotNull) {
    return '${atKey.key}.${atClientPreference.namespace}';
  }
  return atKey.key;
}