hunk.code_window:     }
       private void trySaveURL(Action action, String token) throws MalformedURLException, URISyntaxException {
           // If the string doesn't throw an exception when being converted to a URI, its a valid URL.
           URL url = new URL(token);
           String path = url.getPath();
           String base = url.getProtocol() + "://" + url.getHost() + getPort(url);
  
hunk.labels: keep keep add keep keep keep keep keep
hunk.after_edit:         // If the URL appears to not have a protocol set, prepend the `https` protocol.
           if (!token.matches("\\w+://.*")) {
               token = "http://" + token;
           }
  
hunk.file_path: app/server/appsmith-server/src/main/java/com/appsmith/server/services/CurlImporterService.java
hunk.type: add
file: package com.appsmith.server.repositories;
  
  import com.appsmith.server.domains.Plugin;
  import com.appsmith.server.domains.PluginType;
  import org.springframework.stereotype.Repository;
  import reactor.core.publisher.Flux;
  import reactor.core.publisher.Mono;
  
  @Repository
  public interface PluginRepository extends BaseRepository<Plugin, String> {
      Mono<Plugin> findByName(String name);
  
      Mono<Plugin> findByPackageName(String packageName);
  
      Mono<Plugin> findById(String id);
  
      Flux<Plugin> findByDefaultInstall(Boolean isDefaultInstall);
  
      Flux<Plugin> findByType(PluginType pluginType);
  }
  