package org.ebookdroid.common.notifications;
import org.ebookdroid.EBookDroidApp;
import org.sufficientlysecure.viewer.R;
import android.app.NotificationManager;
import android.app.PendingIntent;
import android.content.Context;
import android.content.Intent;
import java.util.concurrent.atomic.AtomicInteger;
import org.emdev.BaseDroidApp;
abstract class AbstractNotificationManager implements INotificationManager {
private NotificationManager manager;
protected final AtomicInteger SEQ = new AtomicInteger();
@Override
public int notify(final int messageId) {
final CharSequence title = BaseDroidApp.context.getText(R.string.app_name);
final CharSequence message = BaseDroidApp.context.getText(messageId);
return notify(title, message, null);
}
@Override
public int notify(final int titleId, final int messageId) {
final CharSequence title = BaseDroidApp.context.getText(titleId);
final CharSequence message = BaseDroidApp.context.getText(messageId);
return notify(title, message, null);
}
@Override
public int notify(final int titleId, final CharSequence message, final Intent intent) {
final CharSequence title = BaseDroidApp.context.getText(titleId);
return notify(title, message, intent);
}
@Override
public int notify(final CharSequence message) {
return notify(BaseDroidApp.context.getText(R.string.app_name), message, null);
}
protected PendingIntent getIntent(final Intent intent) {
return intent != null ? PendingIntent.getActivity(EBookDroidApp.context, 0, intent, 0) : getDefaultIntent();
}
protected PendingIntent getDefaultIntent() {
return PendingIntent.getActivity(BaseDroidApp.context, 0, new Intent(), 0);
}
protected NotificationManager getManager() {
if (manager == null) {
manager = (NotificationManager) BaseDroidApp.context.getSystemService(Context.NOTIFICATION_SERVICE);
}
return manager;
}
}