Module org.cloudi

Class OtpErlangPort

    • Constructor Detail

      • OtpErlangPort

        public OtpErlangPort​(OtpInputStream buf)
                      throws OtpErlangDecodeException
        Create an Erlang port from a stream containing a port encoded in Erlang external format.
        Parameters:
        buf - the stream containing the encoded port.
        Throws:
        OtpErlangDecodeException - if the buffer does not contain a valid external representation of an Erlang port.
      • OtpErlangPort

        public OtpErlangPort​(String node,
                             long id,
                             int creation)
        Create an Erlang port from its components.
        Parameters:
        node - the nodename.
        id - an arbitrary number. Only the low order 28 bits will be used.
        creation - another arbitrary number. Only the low order 2 bits will be used.
      • OtpErlangPort

        public OtpErlangPort​(int tag,
                             String node,
                             long id,
                             int creation)
        Create an Erlang port from its components.
        Parameters:
        tag - the external format to be compliant with. OtpExternal.portTag where only a subset of the bits are used (see other constructor) OtpExternal.newPortTag where all 32 bits of id and creation are significant. newPortTag can only be decoded by OTP-19 and newer.
        node - the nodename.
        id - an arbitrary number. Only the low order 28 bits will be used.
        creation - another arbitrary number.
    • Method Detail

      • tag

        protected int tag()
      • id

        public long id()
        Get the id number from the port.
        Returns:
        the id number from the port.
      • creation

        public int creation()
        Get the creation number from the port.
        Returns:
        the creation number from the port.
      • node

        public String node()
        Get the node name from the port.
        Returns:
        the node name from the port.
      • toString

        public String toString()
        Get the string representation of the port. Erlang ports are printed as #Port<node.id>.
        Specified by:
        toString in class OtpErlangObject
        Returns:
        the string representation of the port.
      • encode

        public void encode​(OtpOutputStream buf)
        Convert this port to the equivalent Erlang external representation.
        Specified by:
        encode in class OtpErlangObject
        Parameters:
        buf - an output stream to which the encoded port should be written.
      • equals

        public boolean equals​(Object o)
        Determine if two ports are equal. Ports are equal if their components are equal.
        Specified by:
        equals in class OtpErlangObject
        Parameters:
        o - the other port to compare to.
        Returns:
        true if the ports are equal, false otherwise.