package org.tmatesoft.svn.core.internal.util.jna;
import java.util.logging.Level;
import org.tmatesoft.svn.util.ISVNDebugLog;
import org.tmatesoft.svn.util.SVNLogType;
import com.sun.jna.Pointer;
import com.sun.jna.ptr.IntByReference;
import com.sun.jna.ptr.PointerByReference;
public class DebugProxyISVNMacOsSecurityLibrary implements ISVNMacOsSecurityLibrary {
private final ISVNMacOsSecurityLibrary myLibrary;
private final ISVNDebugLog myDebugLog;
public DebugProxyISVNMacOsSecurityLibrary(ISVNMacOsSecurityLibrary myLibrary, ISVNDebugLog myDebugLog) {
this.myLibrary = myLibrary;
this.myDebugLog = myDebugLog;
}
public int SecKeychainSetUserInteractionAllowed(boolean userInteractionAllowed) {
final int i = myLibrary.SecKeychainSetUserInteractionAllowed(userInteractionAllowed);
myDebugLog.log(SVNLogType.NATIVE_CALL, "CALLED ISVNMacOsSecurityLibrary#SecKeychainSetUserInteractionAllowed(" +
userInteractionAllowed + ") = " + i, Level.INFO);
return i;
}
public int SecKeychainFindGenericPassword(Pointer keychain, int realmLength, byte[] realm, int userNameLength, byte[] userName, IntByReference passwordLengthHolder, PointerByReference passwordHolder, PointerByReference itemHolder) {
final int i = myLibrary.SecKeychainFindGenericPassword(keychain, realmLength, realm, userNameLength, userName, passwordLengthHolder, passwordHolder, itemHolder);
myDebugLog.log(SVNLogType.NATIVE_CALL, "CALLED ISVNMacOsSecurityLibrary#SecKeychainFindGenericPassword(" +
DebugProxyISVNCLibrary.toStringNullable(keychain) + ", " + realmLength +
", " + new String(realm, 0, realmLength) + ", " + userNameLength + ", " +
new String(userName, 0, userNameLength) + ", " + DebugProxyISVNCLibrary.isNull(passwordLengthHolder) +
", " + DebugProxyISVNCLibrary.isNull(passwordHolder) + ", " + DebugProxyISVNCLibrary.isNull(itemHolder) + ") = " + i, Level.INFO);
return i;
}
public int SecKeychainAddGenericPassword(Pointer keychain, int realmLength, byte[] realm, int userNameLength, byte[] userName, int pointerLength, byte[] password, Pointer item) {
final int i = myLibrary.SecKeychainAddGenericPassword(keychain, realmLength, realm, userNameLength, userName, pointerLength, password, item);
myDebugLog.log(SVNLogType.NATIVE_CALL, "CALLED ISVNMacOsSecurityLibrary#SecKeychainAddGenericPassword(" +
DebugProxyISVNCLibrary.toStringNullable(keychain) + ", " + realmLength +
", " + new String(realm, 0, realmLength) + ", " + userNameLength + ", " +
new String(userName, 0, userNameLength) + ", " + pointerLength +
", " + DebugProxyISVNCLibrary.isNull(password) + ", " + DebugProxyISVNCLibrary.toStringNullable(item) + ") = " + i, Level.INFO);
return i;
}
public int SecKeychainItemModifyAttributesAndData(Pointer item, PointerByReference attributesHolder, int passwordLength, byte[] password) {
final int i = myLibrary.SecKeychainItemModifyAttributesAndData(item, attributesHolder, passwordLength, password);
myDebugLog.log(SVNLogType.NATIVE_CALL, "CALLED ISVNMacOsSecurityLibrary#SecKeychainItemModifyAttributesAndData(" +
DebugProxyISVNCLibrary.toStringNullable(item) + ", " + DebugProxyISVNCLibrary.toStringNullable(attributesHolder) +
", " + passwordLength + ", " + DebugProxyISVNCLibrary.isNull(password) + ") = " + i, Level.INFO);
return i;
}
public int SecKeychainItemFreeContent(Pointer attributes, Pointer data) {
final int i = myLibrary.SecKeychainItemFreeContent(attributes, data);
myDebugLog.log(SVNLogType.NATIVE_CALL, "CALLED ISVNMacOsSecurityLibrary#SecKeychainItemFreeContent(" +
DebugProxyISVNCLibrary.toStringNullable(attributes) + ", " + DebugProxyISVNCLibrary.toStringNullable(data) + ") = " + i, Level.INFO);
return i;
}
}