Package com.biglybt.core.subs.impl
Class SubscriptionSchedulerImpl
java.lang.Object
com.biglybt.core.subs.impl.SubscriptionSchedulerImpl
- All Implemented Interfaces:
SubscriptionManagerListener
,SubscriptionScheduler
public class SubscriptionSchedulerImpl
extends Object
implements SubscriptionScheduler, SubscriptionManagerListener
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate Map
<Subscription, List<AESemaphore>> private FrequencyLimitedDispatcher
private static final int
private static final int
private String
private long
private SubscriptionManagerImpl
private ThreadPool
<AERunnable> private TimerEvent
private boolean
private static final Object
private static final Object
private static final Object
private boolean
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
-
Method Summary
Modifier and TypeMethodDescriptionvoid
associationsChanged
(byte[] association_hash) protected void
boolean
download
(Subscription subs, boolean is_auto) void
download
(Subscription subs, boolean is_auto, SubscriptionDownloadListener listener) void
download
(Subscription subs, SubscriptionResult original_result) void
downloadAsync
(Subscription subs, boolean is_auto) protected long
getNextScan
(Subscription sub) long
protected void
protected void
protected void
scanFailed
(Subscription sub) protected void
scanSuccess
(Subscription sub) protected void
schedule()
void
subscriptionAdded
(Subscription subscription) void
subscriptionChanged
(Subscription subscription, int reason) void
subscriptionRemoved
(Subscription subscription) void
subscriptionRequested
(SearchProvider sp, Map<String, Object> properties) void
subscriptionRequested
(URL url, Map<String, Object> options) void
subscriptionSelected
(Subscription subscription)
-
Field Details
-
SCHEDULER_NEXT_SCAN_KEY
-
SCHEDULER_FAILED_SCAN_CONSEC_KEY
-
SCHEDULER_FAILED_SCAN_TIME_KEY
-
FAIL_INIT_DELAY
private static final int FAIL_INIT_DELAY- See Also:
-
FAIL_MAX_DELAY
private static final int FAIL_MAX_DELAY- See Also:
-
manager
-
active_subscription_downloaders
-
rate_limit_map
-
active_result_downloaders
-
result_downloader
-
schedulng_permitted
private boolean schedulng_permitted -
schedule_event
-
schedule_in_progress
private boolean schedule_in_progress -
last_schedule
private long last_schedule -
last_sched_str
-
calculateScheduleDispatcher
-
-
Constructor Details
-
SubscriptionSchedulerImpl
-
-
Method Details
-
downloadAsync
- Specified by:
downloadAsync
in interfaceSubscriptionScheduler
- Throws:
SubscriptionException
-
download
- Specified by:
download
in interfaceSubscriptionScheduler
-
download
- Specified by:
download
in interfaceSubscriptionScheduler
- Throws:
SubscriptionException
-
download
- Specified by:
download
in interfaceSubscriptionScheduler
-
calculateSchedule
protected void calculateSchedule() -
schedule
protected void schedule() -
getNextScan
-
getNextUpdateTime
- Specified by:
getNextUpdateTime
in interfaceSubscriptionScheduler
-
scanSuccess
-
scanFailed
-
log
-
log
-
subscriptionAdded
- Specified by:
subscriptionAdded
in interfaceSubscriptionManagerListener
-
subscriptionChanged
- Specified by:
subscriptionChanged
in interfaceSubscriptionManagerListener
-
subscriptionSelected
- Specified by:
subscriptionSelected
in interfaceSubscriptionManagerListener
-
subscriptionRemoved
- Specified by:
subscriptionRemoved
in interfaceSubscriptionManagerListener
-
associationsChanged
public void associationsChanged(byte[] association_hash) - Specified by:
associationsChanged
in interfaceSubscriptionManagerListener
-
subscriptionRequested
- Specified by:
subscriptionRequested
in interfaceSubscriptionManagerListener
-
subscriptionRequested
public void subscriptionRequested(SearchProvider sp, Map<String, Object> properties) throws SubscriptionException- Throws:
SubscriptionException
-