public class org.ehcache.impl.persistence.DefaultLocalPersistenceService implements org.ehcache.core.spi.service.LocalPersistenceService
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.ehcache.impl.persistence.DefaultLocalPersistenceService
super_class: java.lang.Object
{
private static final org.slf4j.Logger LOGGER;
descriptor: Lorg/slf4j/Logger;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private final java.io.File rootDirectory;
descriptor: Ljava/io/File;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.io.File lockFile;
descriptor: Ljava/io/File;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private java.nio.channels.FileLock lock;
descriptor: Ljava/nio/channels/FileLock;
flags: (0x0002) ACC_PRIVATE
private java.io.RandomAccessFile rw;
descriptor: Ljava/io/RandomAccessFile;
flags: (0x0002) ACC_PRIVATE
private boolean started;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lorg/ehcache/impl/persistence/DefaultLocalPersistenceService;
invokestatic org.slf4j.LoggerFactory.getLogger:(Ljava/lang/Class;)Lorg/slf4j/Logger;
putstatic org.ehcache.impl.persistence.DefaultLocalPersistenceService.LOGGER:Lorg/slf4j/Logger;
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(org.ehcache.impl.config.persistence.DefaultPersistenceConfiguration);
descriptor: (Lorg/ehcache/impl/config/persistence/DefaultPersistenceConfiguration;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 1
ifnull 4
2: aload 0
aload 1
invokevirtual org.ehcache.impl.config.persistence.DefaultPersistenceConfiguration.getRootDirectory:()Ljava/io/File;
putfield org.ehcache.impl.persistence.DefaultLocalPersistenceService.rootDirectory:Ljava/io/File;
3: goto 5
4: StackMap locals: org.ehcache.impl.persistence.DefaultLocalPersistenceService org.ehcache.impl.config.persistence.DefaultPersistenceConfiguration
StackMap stack:
new java.lang.NullPointerException
dup
ldc "DefaultPersistenceConfiguration cannot be null"
invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
athrow
5: StackMap locals:
StackMap stack:
aload 0
new java.io.File
dup
aload 0
getfield org.ehcache.impl.persistence.DefaultLocalPersistenceService.rootDirectory:Ljava/io/File;
ldc ".lock"
invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
putfield org.ehcache.impl.persistence.DefaultLocalPersistenceService.lockFile:Ljava/io/File;
6: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/ehcache/impl/persistence/DefaultLocalPersistenceService;
0 7 1 persistenceConfiguration Lorg/ehcache/impl/config/persistence/DefaultPersistenceConfiguration;
MethodParameters:
Name Flags
persistenceConfiguration final
public synchronized void start(org.ehcache.spi.service.ServiceProvider<org.ehcache.spi.service.Service>);
descriptor: (Lorg/ehcache/spi/service/ServiceProvider;)V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.ehcache.impl.persistence.DefaultLocalPersistenceService.internalStart:()V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/ehcache/impl/persistence/DefaultLocalPersistenceService;
0 2 1 serviceProvider Lorg/ehcache/spi/service/ServiceProvider<Lorg/ehcache/spi/service/Service;>;
Signature: (Lorg/ehcache/spi/service/ServiceProvider<Lorg/ehcache/spi/service/Service;>;)V
MethodParameters:
Name Flags
serviceProvider final
public synchronized void startForMaintenance(org.ehcache.spi.service.ServiceProvider<? super org.ehcache.spi.service.MaintainableService>, org.ehcache.spi.service.MaintainableService$MaintenanceScope);
descriptor: (Lorg/ehcache/spi/service/ServiceProvider;Lorg/ehcache/spi/service/MaintainableService$MaintenanceScope;)V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=1, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual org.ehcache.impl.persistence.DefaultLocalPersistenceService.internalStart:()V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/ehcache/impl/persistence/DefaultLocalPersistenceService;
0 2 1 serviceProvider Lorg/ehcache/spi/service/ServiceProvider<-Lorg/ehcache/spi/service/MaintainableService;>;
0 2 2 maintenanceScope Lorg/ehcache/spi/service/MaintainableService$MaintenanceScope;
Signature: (Lorg/ehcache/spi/service/ServiceProvider<-Lorg/ehcache/spi/service/MaintainableService;>;Lorg/ehcache/spi/service/MaintainableService$MaintenanceScope;)V
MethodParameters:
Name Flags
serviceProvider
maintenanceScope
private void internalStart();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=2, args_size=1
start local 0 0: aload 0
getfield org.ehcache.impl.persistence.DefaultLocalPersistenceService.started:Z
ifne 19
1: aload 0
getfield org.ehcache.impl.persistence.DefaultLocalPersistenceService.rootDirectory:Ljava/io/File;
invokestatic org.ehcache.impl.persistence.FileUtils.createLocationIfRequiredAndVerify:(Ljava/io/File;)V
2: aload 0
new java.io.RandomAccessFile
dup
aload 0
getfield org.ehcache.impl.persistence.DefaultLocalPersistenceService.lockFile:Ljava/io/File;
ldc "rw"
invokespecial java.io.RandomAccessFile.<init>:(Ljava/io/File;Ljava/lang/String;)V
putfield org.ehcache.impl.persistence.DefaultLocalPersistenceService.rw:Ljava/io/RandomAccessFile;
3: goto 6
StackMap locals:
StackMap stack: java.io.FileNotFoundException
4: astore 1
start local 1 5: new java.lang.RuntimeException
dup
aload 1
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 1 6: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield org.ehcache.impl.persistence.DefaultLocalPersistenceService.rw:Ljava/io/RandomAccessFile;
invokevirtual java.io.RandomAccessFile.getChannel:()Ljava/nio/channels/FileChannel;
invokevirtual java.nio.channels.FileChannel.tryLock:()Ljava/nio/channels/FileLock;
putfield org.ehcache.impl.persistence.DefaultLocalPersistenceService.lock:Ljava/nio/channels/FileLock;
7: goto 15
StackMap locals:
StackMap stack: java.nio.channels.OverlappingFileLockException
8: astore 1
start local 1 9: new java.lang.RuntimeException
dup
new java.lang.StringBuilder
dup
ldc "Persistence directory already locked by this process: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield org.ehcache.impl.persistence.DefaultLocalPersistenceService.rootDirectory:Ljava/io/File;
invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 1
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 1 10: StackMap locals:
StackMap stack: java.lang.Exception
astore 1
start local 1 11: aload 0
getfield org.ehcache.impl.persistence.DefaultLocalPersistenceService.rw:Ljava/io/RandomAccessFile;
invokevirtual java.io.RandomAccessFile.close:()V
12: goto 14
StackMap locals: org.ehcache.impl.persistence.DefaultLocalPersistenceService java.lang.Exception
StackMap stack: java.io.IOException
13: pop
14: StackMap locals:
StackMap stack:
new java.lang.RuntimeException
dup
new java.lang.StringBuilder
dup
ldc "Persistence directory couldn't be locked: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield org.ehcache.impl.persistence.DefaultLocalPersistenceService.rootDirectory:Ljava/io/File;
invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 1
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 1 15: StackMap locals:
StackMap stack:
aload 0
getfield org.ehcache.impl.persistence.DefaultLocalPersistenceService.lock:Ljava/nio/channels/FileLock;
ifnonnull 17
16: new java.lang.RuntimeException
dup
new java.lang.StringBuilder
dup
ldc "Persistence directory already locked by another process: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield org.ehcache.impl.persistence.DefaultLocalPersistenceService.rootDirectory:Ljava/io/File;
invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
17: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield org.ehcache.impl.persistence.DefaultLocalPersistenceService.started:Z
18: getstatic org.ehcache.impl.persistence.DefaultLocalPersistenceService.LOGGER:Lorg/slf4j/Logger;
ldc "RootDirectory Locked"
invokeinterface org.slf4j.Logger.debug:(Ljava/lang/String;)V
19: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Lorg/ehcache/impl/persistence/DefaultLocalPersistenceService;
5 6 1 e Ljava/io/FileNotFoundException;
9 10 1 e Ljava/nio/channels/OverlappingFileLockException;
11 15 1 e Ljava/lang/Exception;
Exception table:
from to target type
2 3 4 Class java.io.FileNotFoundException
6 7 8 Class java.nio.channels.OverlappingFileLockException
6 7 10 Class java.lang.Exception
11 12 13 Class java.io.IOException
public synchronized void stop();
descriptor: ()V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=5, locals=2, args_size=1
start local 0 0: aload 0
getfield org.ehcache.impl.persistence.DefaultLocalPersistenceService.started:Z
ifeq 12
1: aload 0
getfield org.ehcache.impl.persistence.DefaultLocalPersistenceService.lock:Ljava/nio/channels/FileLock;
invokevirtual java.nio.channels.FileLock.release:()V
2: aload 0
getfield org.ehcache.impl.persistence.DefaultLocalPersistenceService.rw:Ljava/io/RandomAccessFile;
invokevirtual java.io.RandomAccessFile.close:()V
3: aload 0
getfield org.ehcache.impl.persistence.DefaultLocalPersistenceService.lockFile:Ljava/io/File;
invokevirtual java.io.File.toPath:()Ljava/nio/file/Path;
invokestatic org.terracotta.utilities.io.Files.delete:(Ljava/nio/file/Path;)V
4: goto 10
StackMap locals:
StackMap stack: java.io.IOException
5: pop
6: getstatic org.ehcache.impl.persistence.DefaultLocalPersistenceService.LOGGER:Lorg/slf4j/Logger;
ldc "Lock file was not deleted {}."
aload 0
getfield org.ehcache.impl.persistence.DefaultLocalPersistenceService.lockFile:Ljava/io/File;
invokevirtual java.io.File.getPath:()Ljava/lang/String;
invokeinterface org.slf4j.Logger.debug:(Ljava/lang/String;Ljava/lang/Object;)V
7: goto 10
StackMap locals:
StackMap stack: java.io.IOException
8: astore 1
start local 1 9: new java.lang.RuntimeException
dup
new java.lang.StringBuilder
dup
ldc "Couldn't unlock rootDir: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield org.ehcache.impl.persistence.DefaultLocalPersistenceService.rootDirectory:Ljava/io/File;
invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 1
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 1 10: StackMap locals:
StackMap stack:
aload 0
iconst_0
putfield org.ehcache.impl.persistence.DefaultLocalPersistenceService.started:Z
11: getstatic org.ehcache.impl.persistence.DefaultLocalPersistenceService.LOGGER:Lorg/slf4j/Logger;
ldc "RootDirectory Unlocked"
invokeinterface org.slf4j.Logger.debug:(Ljava/lang/String;)V
12: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lorg/ehcache/impl/persistence/DefaultLocalPersistenceService;
9 10 1 e Ljava/io/IOException;
Exception table:
from to target type
3 4 5 Class java.io.IOException
1 7 8 Class java.io.IOException
java.io.File getLockFile();
descriptor: ()Ljava/io/File;
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.ehcache.impl.persistence.DefaultLocalPersistenceService.lockFile:Ljava/io/File;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/ehcache/impl/persistence/DefaultLocalPersistenceService;
public org.ehcache.core.spi.service.LocalPersistenceService$SafeSpaceIdentifier createSafeSpaceIdentifier(java.lang.String, java.lang.String);
descriptor: (Ljava/lang/String;Ljava/lang/String;)Lorg/ehcache/core/spi/service/LocalPersistenceService$SafeSpaceIdentifier;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokestatic org.ehcache.impl.persistence.FileUtils.validateName:(Ljava/lang/String;)V
1: aload 0
aload 1
aload 2
invokevirtual org.ehcache.impl.persistence.DefaultLocalPersistenceService.createSafeSpaceLogical:(Ljava/lang/String;Ljava/lang/String;)Lorg/ehcache/impl/persistence/DefaultLocalPersistenceService$SafeSpace;
astore 3
start local 3 2: aload 3
getfield org.ehcache.impl.persistence.DefaultLocalPersistenceService$SafeSpace.directory:Ljava/io/File;
invokevirtual java.io.File.getParentFile:()Ljava/io/File;
astore 4
start local 4 3: goto 7
4: StackMap locals: org.ehcache.impl.persistence.DefaultLocalPersistenceService$SafeSpace java.io.File
StackMap stack:
aload 0
getfield org.ehcache.impl.persistence.DefaultLocalPersistenceService.rootDirectory:Ljava/io/File;
aload 4
invokevirtual java.io.File.equals:(Ljava/lang/Object;)Z
ifeq 6
5: new org.ehcache.impl.persistence.DefaultLocalPersistenceService$DefaultSafeSpaceIdentifier
dup
aload 3
invokespecial org.ehcache.impl.persistence.DefaultLocalPersistenceService$DefaultSafeSpaceIdentifier.<init>:(Lorg/ehcache/impl/persistence/DefaultLocalPersistenceService$SafeSpace;)V
areturn
6: StackMap locals:
StackMap stack:
aload 4
invokevirtual java.io.File.getParentFile:()Ljava/io/File;
astore 4
StackMap locals:
StackMap stack:
7: aload 4
ifnonnull 4
end local 4 8: new java.lang.IllegalArgumentException
dup
ldc "Attempted to access file outside the persistence path"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/ehcache/impl/persistence/DefaultLocalPersistenceService;
0 9 1 owner Ljava/lang/String;
0 9 2 identifier Ljava/lang/String;
2 9 3 ss Lorg/ehcache/impl/persistence/DefaultLocalPersistenceService$SafeSpace;
3 8 4 parent Ljava/io/File;
MethodParameters:
Name Flags
owner
identifier
public void createSafeSpace(org.ehcache.core.spi.service.LocalPersistenceService$SafeSpaceIdentifier);
descriptor: (Lorg/ehcache/core/spi/service/LocalPersistenceService$SafeSpaceIdentifier;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 1
ifnull 1
aload 1
instanceof org.ehcache.impl.persistence.DefaultLocalPersistenceService$DefaultSafeSpaceIdentifier
ifne 2
1: StackMap locals:
StackMap stack:
new java.lang.AssertionError
dup
ldc "Invalid safe space identifier. Identifier not created"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
2: StackMap locals:
StackMap stack:
aload 1
checkcast org.ehcache.impl.persistence.DefaultLocalPersistenceService$DefaultSafeSpaceIdentifier
getfield org.ehcache.impl.persistence.DefaultLocalPersistenceService$DefaultSafeSpaceIdentifier.safeSpace:Lorg/ehcache/impl/persistence/DefaultLocalPersistenceService$SafeSpace;
astore 2
start local 2 3: aload 2
getfield org.ehcache.impl.persistence.DefaultLocalPersistenceService$SafeSpace.directory:Ljava/io/File;
invokevirtual java.io.File.getParentFile:()Ljava/io/File;
invokestatic org.ehcache.impl.persistence.FileUtils.create:(Ljava/io/File;)V
4: aload 2
getfield org.ehcache.impl.persistence.DefaultLocalPersistenceService$SafeSpace.directory:Ljava/io/File;
invokestatic org.ehcache.impl.persistence.FileUtils.create:(Ljava/io/File;)V
5: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/ehcache/impl/persistence/DefaultLocalPersistenceService;
0 6 1 safeSpaceId Lorg/ehcache/core/spi/service/LocalPersistenceService$SafeSpaceIdentifier;
3 6 2 ss Lorg/ehcache/impl/persistence/DefaultLocalPersistenceService$SafeSpace;
Exceptions:
throws org.ehcache.CachePersistenceException
MethodParameters:
Name Flags
safeSpaceId
public void destroySafeSpace(org.ehcache.core.spi.service.LocalPersistenceService$SafeSpaceIdentifier, boolean);
descriptor: (Lorg/ehcache/core/spi/service/LocalPersistenceService$SafeSpaceIdentifier;Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
ifnull 1
aload 1
instanceof org.ehcache.impl.persistence.DefaultLocalPersistenceService$DefaultSafeSpaceIdentifier
ifne 2
1: StackMap locals:
StackMap stack:
new java.lang.AssertionError
dup
ldc "Invalid safe space identifier. Identifier not created"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
2: StackMap locals:
StackMap stack:
aload 1
checkcast org.ehcache.impl.persistence.DefaultLocalPersistenceService$DefaultSafeSpaceIdentifier
getfield org.ehcache.impl.persistence.DefaultLocalPersistenceService$DefaultSafeSpaceIdentifier.safeSpace:Lorg/ehcache/impl/persistence/DefaultLocalPersistenceService$SafeSpace;
astore 3
start local 3 3: aload 0
aload 3
iload 2
invokevirtual org.ehcache.impl.persistence.DefaultLocalPersistenceService.destroy:(Lorg/ehcache/impl/persistence/DefaultLocalPersistenceService$SafeSpace;Z)V
4: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/ehcache/impl/persistence/DefaultLocalPersistenceService;
0 5 1 safeSpaceId Lorg/ehcache/core/spi/service/LocalPersistenceService$SafeSpaceIdentifier;
0 5 2 verbose Z
3 5 3 ss Lorg/ehcache/impl/persistence/DefaultLocalPersistenceService$SafeSpace;
MethodParameters:
Name Flags
safeSpaceId
verbose
public void destroyAll(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: new java.io.File
dup
aload 0
getfield org.ehcache.impl.persistence.DefaultLocalPersistenceService.rootDirectory:Ljava/io/File;
aload 1
invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
astore 2
start local 2 1: aload 2
invokevirtual java.io.File.exists:()Z
ifeq 7
aload 2
invokevirtual java.io.File.isDirectory:()Z
ifeq 7
2: aload 2
invokestatic org.ehcache.impl.persistence.FileUtils.tryRecursiveDelete:(Ljava/io/File;)Z
ifeq 5
3: getstatic org.ehcache.impl.persistence.DefaultLocalPersistenceService.LOGGER:Lorg/slf4j/Logger;
ldc "Destroyed all file based persistence contexts owned by {}"
aload 1
invokeinterface org.slf4j.Logger.debug:(Ljava/lang/String;Ljava/lang/Object;)V
4: goto 8
5: StackMap locals: java.io.File
StackMap stack:
getstatic org.ehcache.impl.persistence.DefaultLocalPersistenceService.LOGGER:Lorg/slf4j/Logger;
ldc "Could not delete all file based persistence contexts owned by {}"
aload 1
invokeinterface org.slf4j.Logger.warn:(Ljava/lang/String;Ljava/lang/Object;)V
6: goto 8
7: StackMap locals:
StackMap stack:
getstatic org.ehcache.impl.persistence.DefaultLocalPersistenceService.LOGGER:Lorg/slf4j/Logger;
ldc "Could not delete all file based persistence contexts owned by {} - is not a directory!"
aload 1
invokeinterface org.slf4j.Logger.warn:(Ljava/lang/String;Ljava/lang/Object;)V
8: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/ehcache/impl/persistence/DefaultLocalPersistenceService;
0 9 1 owner Ljava/lang/String;
1 9 2 ownerDirectory Ljava/io/File;
MethodParameters:
Name Flags
owner
private void destroy(org.ehcache.impl.persistence.DefaultLocalPersistenceService$SafeSpace, boolean);
descriptor: (Lorg/ehcache/impl/persistence/DefaultLocalPersistenceService$SafeSpace;Z)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: iload 2
ifeq 2
1: getstatic org.ehcache.impl.persistence.DefaultLocalPersistenceService.LOGGER:Lorg/slf4j/Logger;
ldc "Destroying file based persistence context for {}"
aload 1
getfield org.ehcache.impl.persistence.DefaultLocalPersistenceService$SafeSpace.identifier:Ljava/lang/String;
invokeinterface org.slf4j.Logger.debug:(Ljava/lang/String;Ljava/lang/Object;)V
2: StackMap locals:
StackMap stack:
aload 1
getfield org.ehcache.impl.persistence.DefaultLocalPersistenceService$SafeSpace.directory:Ljava/io/File;
invokevirtual java.io.File.exists:()Z
ifeq 5
aload 1
getfield org.ehcache.impl.persistence.DefaultLocalPersistenceService$SafeSpace.directory:Ljava/io/File;
invokestatic org.ehcache.impl.persistence.FileUtils.tryRecursiveDelete:(Ljava/io/File;)Z
ifne 5
3: iload 2
ifeq 5
4: getstatic org.ehcache.impl.persistence.DefaultLocalPersistenceService.LOGGER:Lorg/slf4j/Logger;
ldc "Could not delete directory for context {}"
aload 1
getfield org.ehcache.impl.persistence.DefaultLocalPersistenceService$SafeSpace.identifier:Ljava/lang/String;
invokeinterface org.slf4j.Logger.warn:(Ljava/lang/String;Ljava/lang/Object;)V
5: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/ehcache/impl/persistence/DefaultLocalPersistenceService;
0 6 1 ss Lorg/ehcache/impl/persistence/DefaultLocalPersistenceService$SafeSpace;
0 6 2 verbose Z
MethodParameters:
Name Flags
ss
verbose
private org.ehcache.impl.persistence.DefaultLocalPersistenceService$SafeSpace createSafeSpaceLogical(java.lang.String, java.lang.String);
descriptor: (Ljava/lang/String;Ljava/lang/String;)Lorg/ehcache/impl/persistence/DefaultLocalPersistenceService$SafeSpace;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=5, args_size=3
start local 0 start local 1 start local 2 0: new java.io.File
dup
aload 0
getfield org.ehcache.impl.persistence.DefaultLocalPersistenceService.rootDirectory:Ljava/io/File;
aload 1
invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
astore 3
start local 3 1: new java.io.File
dup
aload 3
aload 2
invokestatic org.ehcache.impl.persistence.FileUtils.safeIdentifier:(Ljava/lang/String;)Ljava/lang/String;
invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
astore 4
start local 4 2: new org.ehcache.impl.persistence.DefaultLocalPersistenceService$SafeSpace
dup
aload 2
aload 4
invokespecial org.ehcache.impl.persistence.DefaultLocalPersistenceService$SafeSpace.<init>:(Ljava/lang/String;Ljava/io/File;)V
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/ehcache/impl/persistence/DefaultLocalPersistenceService;
0 3 1 owner Ljava/lang/String;
0 3 2 identifier Ljava/lang/String;
1 3 3 ownerDirectory Ljava/io/File;
2 3 4 directory Ljava/io/File;
MethodParameters:
Name Flags
owner
identifier
}
SourceFile: "DefaultLocalPersistenceService.java"
NestMembers:
org.ehcache.impl.persistence.DefaultLocalPersistenceService$DefaultSafeSpaceIdentifier org.ehcache.impl.persistence.DefaultLocalPersistenceService$SafeSpace
InnerClasses:
public abstract SafeSpaceIdentifier = org.ehcache.core.spi.service.LocalPersistenceService$SafeSpaceIdentifier of org.ehcache.core.spi.service.LocalPersistenceService
private final DefaultSafeSpaceIdentifier = org.ehcache.impl.persistence.DefaultLocalPersistenceService$DefaultSafeSpaceIdentifier of org.ehcache.impl.persistence.DefaultLocalPersistenceService
private final SafeSpace = org.ehcache.impl.persistence.DefaultLocalPersistenceService$SafeSpace of org.ehcache.impl.persistence.DefaultLocalPersistenceService
public final MaintenanceScope = org.ehcache.spi.service.MaintainableService$MaintenanceScope of org.ehcache.spi.service.MaintainableService