import org.jetbrains.annotations.Nullable;
public interface CloudApiConnector<T extends AbstractCloudImage, G extends AbstractCloudInstance> {
void test() throws CheckedCloudException;
@NotNull
String getKey();
<BUG>@Nullable
InstanceStatus getInstanceStatusIfExists(@NotNull String instanceName);
</BUG>
@NotNull
<R extends AbstractInstance> Map<String, R> fetchInstances(@NotNull final T image) throws CheckedCloudException;

import org.jetbrains.annotations.Nullable;
public interface CloudApiConnector<T extends AbstractCloudImage, G extends AbstractCloudInstance> {
void test() throws CheckedCloudException;
@NotNull
String getKey();
@NotNull
Map<String, InstanceStatus> getInstanceStatusesIfExists(@NotNull Set<String> instanceNames);
@NotNull
<R extends AbstractInstance> Map<String, R> fetchInstances(@NotNull final T image) throws CheckedCloudException;
