[13350] | 1 | /*
|
---|
| 2 | * MemoryLimitException
|
---|
| 3 | *
|
---|
| 4 | * Author: Lasse Collin <lasse.collin@tukaani.org>
|
---|
| 5 | *
|
---|
| 6 | * This file has been put into the public domain.
|
---|
| 7 | * You can do whatever you want with this file.
|
---|
| 8 | */
|
---|
| 9 |
|
---|
| 10 | package org.tukaani.xz;
|
---|
| 11 |
|
---|
| 12 | /**
|
---|
| 13 | * Thrown when the memory usage limit given to the XZ decompressor
|
---|
| 14 | * would be exceeded.
|
---|
| 15 | * <p>
|
---|
| 16 | * The amount of memory required and the memory usage limit are
|
---|
| 17 | * included in the error detail message in human readable format.
|
---|
| 18 | */
|
---|
| 19 | public class MemoryLimitException extends XZIOException {
|
---|
| 20 | private static final long serialVersionUID = 3L;
|
---|
| 21 |
|
---|
| 22 | private final int memoryNeeded;
|
---|
| 23 | private final int memoryLimit;
|
---|
| 24 |
|
---|
| 25 | /**
|
---|
| 26 | * Creates a new MemoryLimitException.
|
---|
| 27 | * <p>
|
---|
| 28 | * The amount of memory needed and the memory usage limit are
|
---|
| 29 | * included in the error detail message.
|
---|
| 30 | *
|
---|
| 31 | * @param memoryNeeded amount of memory needed as kibibytes (KiB)
|
---|
| 32 | * @param memoryLimit specified memory usage limit as kibibytes (KiB)
|
---|
| 33 | */
|
---|
| 34 | public MemoryLimitException(int memoryNeeded, int memoryLimit) {
|
---|
| 35 | super("" + memoryNeeded + " KiB of memory would be needed; limit was "
|
---|
| 36 | + memoryLimit + " KiB");
|
---|
| 37 |
|
---|
| 38 | this.memoryNeeded = memoryNeeded;
|
---|
| 39 | this.memoryLimit = memoryLimit;
|
---|
| 40 | }
|
---|
| 41 |
|
---|
| 42 | /**
|
---|
| 43 | * Gets how much memory is required to decompress the data.
|
---|
| 44 | *
|
---|
| 45 | * @return amount of memory needed as kibibytes (KiB)
|
---|
| 46 | */
|
---|
| 47 | public int getMemoryNeeded() {
|
---|
| 48 | return memoryNeeded;
|
---|
| 49 | }
|
---|
| 50 |
|
---|
| 51 | /**
|
---|
| 52 | * Gets what the memory usage limit was at the time the exception
|
---|
| 53 | * was created.
|
---|
| 54 | *
|
---|
| 55 | * @return memory usage limit as kibibytes (KiB)
|
---|
| 56 | */
|
---|
| 57 | public int getMemoryLimit() {
|
---|
| 58 | return memoryLimit;
|
---|
| 59 | }
|
---|
| 60 | }
|
---|