See {@link ClientProtocol#hardLink(String, String)}.
483880
@Override
  public boolean hardLink(Path src, Path dst) throws IOException {  
    return dfs.hardLink(getPathName(src), getPathName(dst));  
  }
687524
public URLConnection get( Object key )
    {
        synchronized( this ) // ensure no ConcurrentModificationException can occur.
        {
            Entry entry = m_hardStore.get( key );
            if( entry == null )
            {
                return null;
            }
            return entry.m_connection;
        }
    }
889302
public void putString(String value)
    {
        if (value.length() > Byte.MAX_VALUE * 2 + 1) {
            putLongString(value);
        }
        else {
            putShortString(value);
        }
    }
170350
public String connectAndBind(String host, int port,
            BindParameter bindParam) 
            throws IOException {
        return connectAndBind(host, port, bindParam, 60000);
    }
994929
public static boolean isOsgiBundleUrl(String str) {
        if (str == null) {
            throw new NullPointerException("Specified string can not be null!");
        }
        return str.startsWith("bundle") && str.contains("://");
    }
931902
@Override
    public void endLink(ResourceReference reference, boolean freestanding, Map<String, String> parameters)
    {
        saveEvent(EventType.END_LINK, reference, freestanding, parameters);
    }
476162
public void getLink(String path, final I_CmsStringCallback callback) {

        m_apiRoot.getRpcHelper().executeRpc(CmsXmlContentUgcApi.SERVICE.getLink(path, new AsyncCallback<String>() {

            @SuppressWarnings("synthetic-access")
            public void onFailure(Throwable caught) {

                m_apiRoot.handleError(caught, null);
            }

            public void onSuccess(String result) {

                callback.call(result);
            }
        }));
    }
1251738
public void addLinkFromSelectPart(final String _linkFrom)
        throws CacheReloadException
    {
        this.fromSelect = new LinkFromSelect(_linkFrom, getQuery().isCacheEnabled() ? getQuery().getKey() : null);
    }
1178518
public static JsonWebKey jsonWebKeyFromString(String jwkString) throws IOException {
        ObjectMapper mapper = new ObjectMapper();
        return mapper.readValue(jwkString, JsonWebKey.class);
    }
848103
public StringBuffer addLinkTag(StringBuffer sb)
    {
        int iIndex = sb.lastIndexOf(Utility.endTag(this.getTableNames(false)));
        if (iIndex != -1)
        {
            String strLink = Utility.encodeXML(this.getLink());
            String strHelpLink = strLink;
            if (strLink.indexOf('?') != -1)   // Always
                strHelpLink = "?" + DBParams.HELP + "=" + "&amp;" + strLink.substring(strLink.indexOf('?') + 1);
            sb.insert(iIndex,
                    Utility.startTag(XMLTags.LINK) +
                        strLink +
                    Utility.endTag(XMLTags.LINK) + XmlUtilities.NEWLINE +
                    Utility.startTag(XMLTags.HELPLINK) +
                        strHelpLink +
                    Utility.endTag(XMLTags.HELPLINK) + XmlUtilities.NEWLINE);
        }
        return sb;
    }
761568
@Override
    public Boolean fromString(String value) {
        return value != null && TRUE.contains(value.toLowerCase());
    }
267726
public static String link(Key k, String content) {
    return link(k, content, null, null, null);
  }
829300
static String link(Key key, String column, long row, String match ) {
    return "/2/Find?key="+key+(column==null?"":"&column="+column)+"&row="+row+(match==null?"":"&match="+match);
  }
838251
public String[] getHardLinkedFiles(String src) throws IOException {
    byte[][] components = INode.getPathComponents(src);
    List<byte [][]> results = null;
    readLock();
    try {
      INodeFile inode = getFileINode(components);
      if (!exists(inode)) {
        throw new IOException(src + " does not exist");
      }
      if (inode instanceof INodeHardLinkFile) {
        HardLinkFileInfo info = ((INodeHardLinkFile) inode)
          .getHardLinkFileInfo();
        // Only get the list of names as byte arrays under the lock.
        results = new ArrayList<byte[][]>(info.getReferenceCnt());
        for (int i = 0; i < info.getReferenceCnt(); i++) {
          try {
            results.add(getINodeByteArray(info.getHardLinkedFile(i)));
          } catch (IOException ioe) {
            NameNode.LOG.info("Hardlink may have been deleted", ioe);
          }
        }
      } else {
        return new String[] {};
      }
    } finally {
      readUnlock();
    }

    // Convert byte arrays to strings outside the lock since this is expensive.
    String[] files = new String[results.size()-1];
    int size = 0;
    for (int i = 0; i < results.size(); i++) {
      String file = getFullPathName(results.get(i));
      if (!file.equals(src)) {
        if (size >= files.length) {
          throw new IOException(src + " is not part of the list of hardlinked "
              + "files! This is a serious bug!");
        }
        files[size++] = file;
      }
    }
    return files;
  }
220825
public static void link(File src, File dst) throws IOException {
    if (src == null || dst == null) {
      throw new IllegalArgumentException("Null parameter passed");
    }
    if (isAvailable()) {
      link(src.getAbsolutePath(), dst.getAbsolutePath());
    } else {
      HardLink.createHardLink(src, dst);
    }
  }
1211154
public Link target(String t)
    {
        if (t!=null && t.length()>0)
            attribute("target",t);
        return this;
    }
499234
@Override
    public void beginLink(ResourceReference reference, boolean freestanding, Map<String, String> parameters)
    {
        for (Listener listener : this.listeners) {
            listener.beginLink(reference, freestanding, parameters);
        }
    }