final int getRawVersionNeededToExtract() { final int method = getRawMethod(); return BZIP2 == method ? 46 : isZip64ExtensionsRequired() ? 45 : DEFLATED == method || isDirectory() ? 20 : 10; }
/** * Sets the encryption property to {@code false} and removes any other * encryption artifacts, e.g. a WinZip AES extra field. * * @since TrueZIP 7.4 * @see <a href="http://java.net/jira/browse/TRUEZIP-176">#TRUEZIP-176</a> */ public final void clearEncryption() { setEncrypted(false); final WinZipAesEntryExtraField field = (WinZipAesEntryExtraField) removeExtraField(WINZIP_AES_ID); if (WINZIP_AES == getRawMethod()) setRawMethod(null == field ? UNKNOWN : field.getMethod()); }
@Test public void testRawMethod() { try { entry.setRawMethod(UNKNOWN - 1); fail(); } catch (IllegalArgumentException expected) { } try { entry.setRawMethod(UShort.MIN_VALUE - 1); fail(); } catch (IllegalArgumentException expected) { } try { entry.setRawMethod(UShort.MAX_VALUE + 1); fail(); } catch (IllegalArgumentException expected) { } assertEquals(0, entry.getRawMethod()); entry.setRawMethod(UShort.MIN_VALUE); assertEquals(UShort.MIN_VALUE, entry.getRawMethod()); entry.setRawMethod(STORED); assertEquals(STORED, entry.getRawMethod()); entry.setRawMethod(DEFLATED); assertEquals(DEFLATED, entry.getRawMethod()); entry.setRawMethod(UShort.MAX_VALUE); assertEquals(UShort.MAX_VALUE, entry.getRawMethod()); }
dos.writeShort(entry.getRawMethod());