public boolean isCopy () { return m_aBytes.isCopy (); }
@Override public InputStream getInputStream () { final InputStream aIS = m_aISP.getInputStream (); if (aIS == null) throw new IllegalStateException ("Failed to open input stream for " + m_aISP); return aIS; }
@Override public OutputStream getOutputStream () { final OutputStream aOS = m_aOSP.getOutputStream (EAppend.TRUNCATE); if (aOS == null) throw new IllegalStateException ("Failed to open output stream for " + m_aOSP); return aOS; }
default boolean isReadMultiple () { return getInputStreamProvider ().isReadMultiple (); }
@Nonnegative public int size () { return m_aBytes.size (); }
/** * @return The hex-encoded String of the message digest bytes. Never * <code>null</code>. */ @Nonnull @Nonempty public String getHexEncodedDigestString () { return m_aBytes.getHexEncoded (); }
@Override public boolean equals (final Object o) { if (o == this) return true; if (o == null || !getClass ().equals (o.getClass ())) return false; final MessageDigestValue rhs = (MessageDigestValue) o; return m_eAlgorithm.equals (rhs.m_eAlgorithm) && m_aBytes.equals (rhs.m_aBytes); }
/** * @return The message digest bytes. The length depends on the used algorithm. * Never <code>null</code>. * @since 9.1.3 */ @Nonnull @Nonempty @ReturnsMutableObject public byte [] bytes () { return m_aBytes.bytes (); }
public MessageDigestValue (@Nonnull final EMessageDigestAlgorithm eAlgorithm, @Nonnull @Nonempty final byte [] aDigestBytes, final boolean bIsCopyNeeded) { ValueEnforcer.notNull (eAlgorithm, "Algorithm"); ValueEnforcer.notEmpty (aDigestBytes, "DigestBytes"); m_eAlgorithm = eAlgorithm; m_aBytes = new ByteArrayWrapper (aDigestBytes, bIsCopyNeeded); }
@Nonnull public InputStream getByteStream () { return m_aISP.getInputStream (); }
@Nonnull public static ESuccess writeMap (@Nonnull final Map <String, String> aMap, @Nonnull final IHasOutputStream aOSP) { ValueEnforcer.notNull (aOSP, "OutputStreamProvider"); return writeMap (aMap, aOSP.getOutputStream (EAppend.DEFAULT)); }
public CachingSAXInputSource (@Nonnull final IHasInputStream aISP) { this (aISP.getInputStream (), null); }
@Override public InputStream getByteStream () { final InputStream aIS = m_aISP.getInputStream (); if (aIS == null) if (LOGGER.isWarnEnabled ()) LOGGER.warn ("Failed to open input stream for " + m_aISP); return aIS; }
public CachingTransformStreamSource (@Nonnull final IHasInputStream aIIS, @Nullable final String sSystemID) { this (aIIS.getInputStream (), sSystemID); }
public CachingSAXInputSource (@Nonnull final IHasInputStream aISP, @Nullable final String sSystemID) { this (aISP.getInputStream (), sSystemID); }
@Nonnull default InputStream getInputStream () { return getInputStreamProvider ().getInputStream (); }
@Override public InputStream getSourceStream () { // This will e.g. throw an UncheckedIOException if compression is enabled, // but the transmitted document is not compressed final InputStream ret = m_aISP.getInputStream (); if (ret == null) throw new IllegalStateException ("Got no InputStream from " + m_aISP); m_aResMgr.addCloseable (ret); return ret; }
@Nonnull public static StreamSource create (@Nonnull final IHasInputStream aISP) { if (aISP instanceof IReadableResource) return create ((IReadableResource) aISP); return create (aISP.getInputStream ()); }
@Nonnull public static ESuccess readMap (@Nonnull final IHasInputStream aISP, @Nonnull final Map <String, String> aTargetMap) { ValueEnforcer.notNull (aISP, "InputStreamProvider"); return readMap (aISP.getInputStream (), aTargetMap); }
@Nonnull public static ESuccess readList (@Nonnull final IHasInputStream aISP, @Nonnull final Collection <String> aTargetList) { ValueEnforcer.notNull (aISP, "InputStreamProvider"); return readList (aISP.getInputStream (), aTargetList); }