public PortableStatus() {
   myInfoGetter =
       new Getter<SVNInfo>() {
         @Override
         public SVNInfo get() {
           return null;
         }
       };
   // TODO: Update working copy format detection
   setWorkingCopyFormat(WorkingCopyFormat.ONE_DOT_SEVEN.getFormat());
 }
  @NotNull
  private static SvnCheckout createCheckoutOperation(
      @NotNull SVNUpdateClient client, @NotNull WorkingCopyFormat format) {
    if (WorkingCopyFormat.ONE_DOT_SIX.equals(format)) {
      client.getOperationsFactory().setPrimaryWcGeneration(SvnWcGeneration.V16);
    }

    SvnCheckout checkoutOperation = client.getOperationsFactory().createCheckout();

    if (WorkingCopyFormat.ONE_DOT_SEVEN.equals(format)) {
      checkoutOperation.setTargetWorkingCopyFormat(ISVNWCDb.WC_FORMAT_17);
    }

    return checkoutOperation;
  }
  private String formatWc(WCInfo info) {
    final StringBuilder sb =
        new StringBuilder()
            .append("<html><head>")
            .append(UIUtil.getCssFontDeclaration(UIUtil.getLabelFont()))
            .append("</head><body><table bgColor=\"")
            .append(ColorUtil.toHex(UIUtil.getPanelBackground()))
            .append("\">");

    sb.append("<tr valign=\"top\"><td colspan=\"3\"><b>")
        .append(info.getPath())
        .append("</b></td></tr>");
    sb.append("<tr valign=\"top\"><td>URL:</td><td colspan=\"2\">")
        .append(info.getRootUrl())
        .append("</td></tr>");
    if (!WorkingCopyFormat.ONE_DOT_SEVEN.equals(info.getFormat())) {
      // can convert
      sb.append("<tr valign=\"top\"><td>Format:</td><td>")
          .append(info.getFormat().getName())
          .append("</td><td><a href=\"")
          .append(CHANGE_FORMAT)
          .append("\">Change</a></td></tr>");
    } else {
      sb.append("<tr valign=\"top\"><td>Format:</td><td colspan=\"2\">")
          .append(info.getFormat().getName())
          .append("</td></tr>");
    }

    if (!SVNDepth.INFINITY.equals(info.getStickyDepth())) {
      // can fix
      sb.append("<tr valign=\"top\"><td>Depth:</td><td>")
          .append(info.getStickyDepth().getName())
          .append("</td><td><a href=\"")
          .append(FIX_DEPTH)
          .append("\">Fix</a></td></tr>");
    } else {
      sb.append("<tr valign=\"top\"><td>Depth:</td><td colspan=\"2\">")
          .append(info.getStickyDepth().getName())
          .append("</td></tr>");
    }

    final NestedCopyType type = info.getType();
    if (NestedCopyType.external.equals(type) || NestedCopyType.switched.equals(type)) {
      sb.append("<tr valign=\"top\"><td colspan=\"3\"><i>")
          .append(type.getName())
          .append("</i></td></tr>");
    }
    if (info.isIsWcRoot()) {
      sb.append("<tr valign=\"top\"><td colspan=\"3\"><i>")
          .append("Working copy root</i></td></tr>");
    }
    sb.append("<tr valign=\"top\"><td colspan=\"3\"><a href=\"")
        .append(CONFIGURE_BRANCHES)
        .append("\">Configure Branches</a></td></tr>");
    sb.append("<tr valign=\"top\"><td colspan=\"3\"><a href=\"")
        .append(MERGE_FROM)
        .append("\"><b>Merge From...</b></a></i></td></tr>");

    sb.append("</table></body></html>");
    return sb.toString();
  }