Skip to content

Callback Result Handling

Complete Event Processing:

public class ComprehensiveEventHandler implements AlphynSecurityListener {
@Override
public void onSuccess(AlphynCallbackResult result) {
logEvent("SUCCESS", result);
// Route to specific handlers based on operation type
switch (result.getOperationType()) {
case INITIALIZATION:
handleInitializationSuccess(result);
break;
case SECURITY_SCAN:
handleSecuritySuccess(result);
break;
case SCAN_RESPONSE:
handleScanResponse(result);
break;
case NETWORK:
// Network events are informational - no action required
Log.d("ByteriaNetwork", result.getOriginalEventType() + ": " + result.getMessage());
break;
case STORAGE:
// Storage events are informational - no action required
Log.d("ByteriaStorage", result.getOriginalEventType() + ": " + result.getMessage());
break;
case CALLBACK:
handleCallbackSuccess(result);
break;
}
}
@Override
public void onFailure(AlphynCallbackResult result) {
logEvent("FAILURE", result);
// Handle failures with appropriate recovery strategies
switch (result.getOperationType()) {
case INITIALIZATION:
handleInitializationFailure(result);
break;
case NETWORK:
// Network failures are handled automatically by SDK with retry logic
Log.w("ByteriaNetwork", "Network issue (SDK handling): " + result.getMessage());
break;
case STORAGE:
// Storage failures are handled automatically by SDK with fallback mechanisms
Log.w("ByteriaStorage", "Storage issue (SDK handling): " + result.getMessage());
break;
default:
handleGenericFailure(result);
break;
}
}
@Override
public void onThreatDetected(AlphynCallbackResult result) {
logEvent("THREAT", result);
// Immediate threat response
ThreatResponse response = evaluateThreat(result);
executeThreatResponse(response);
}
private void logEvent(String category, AlphynCallbackResult result) {
Log.i("ByteriaEvents", String.format("[%s] %s: %s (%s)",
category,
result.getOperationType(),
result.getOriginalEventType(),
result.getMessage()));
}
}