package org.netbeans.gradle.project.properties;
import java.util.List;
import javax.annotation.Nonnull;
public interface ProfileSettingsKey {
@Nonnull
public List<ProfileSettingsKey> getWithFallbacks();
/**
* Opens the profile file associated with this key and allows the reading of its properties.
* <P>
* <B>Warning: Do not directly call this method!</B> If you directly call this method, you risk
* to see inconsistent values with code opened the profile elsewhere. You should always open
* a profile through {@link ProfileSettingsContainer} which ensures that if you get the same
* profile multiple times, you will see consistent values.
*
* @return the yet to be loaded profile settings associated with this key. This
* method never returns {@code null}.
*/
@Nonnull
public LoadableSingleProfileSettingsEx openUnloadedProfileSettings();
}