public void execute()

in src/main/java/com/microsoft/jenkins/appservice/commands/FTPDeployCommand.java [42:78]


    public void execute(IFTPDeployCommandData context) {
        final FilePath workspace = context.getWorkspace();
        final PublishingProfile pubProfile = context.getPublishingProfile();

        if (workspace == null) {
            context.logError("Workspace is null");
            context.setDeploymentState(DeploymentState.HasError);
            return;
        }

        String ftpUrl = pubProfile.ftpUrl();
        if (ftpUrl.startsWith("ftp://")) {
            ftpUrl = ftpUrl.substring("ftp://".length());
        }

        if (ftpUrl.indexOf("/") > 0) {
            int splitIndex = ftpUrl.indexOf("/");
            ftpUrl = ftpUrl.substring(0, splitIndex);
        }

        try {
            workspace.act(new FTPDeployCommandOnSlave(
                context.getListener(),
                ftpUrl,
                pubProfile.ftpUsername(),
                pubProfile.ftpPassword(),
                workspace,
                context.getSourceDirectory(),
                context.getTargetDirectory(),
                context.getFilePath()
            ));
        } catch (IOException | FTPException e) {
            context.logError("Fail to deploy to FTP: " + e.getMessage());
        } catch (InterruptedException e) {
            Thread.currentThread().interrupt();
        }
    }