private void scheduleUpdate() { // Nothing to do if we don't know what profile we are checking if (profileId == null) return; IPreferenceStore pref = AutomaticUpdatePlugin.getDefault().getPreferenceStore(); // See if automatic search is enabled at all if (!pref.getBoolean(PreferenceConstants.PREF_AUTO_UPDATE_ENABLED)) return; String schedule = pref.getString(PreferenceConstants.PREF_AUTO_UPDATE_SCHEDULE); long delay = IUpdateChecker.ONE_TIME_CHECK; long poll = IUpdateChecker.ONE_TIME_CHECK; if (!schedule.equals(PreferenceConstants.PREF_UPDATE_ON_STARTUP)) { delay = computeDelay(pref); poll = computePoll(pref); } // We do not access the AutomaticUpdater directly when we register // the listener. This prevents the UI classes from being started up // too soon. // see https://bugs.eclipse.org/bugs/show_bug.cgi?id=227582 listener = new IUpdateListener() { public void updatesAvailable(UpdateEvent event) { AutomaticUpdatePlugin.getDefault().getAutomaticUpdater().updatesAvailable(event); } }; checker.addUpdateCheck(profileId, getProfileQuery(), delay, poll, listener); }
private void removeUpdateListener() { // Remove the current listener if there is one if (listener != null && checker != null) { checker.removeUpdateCheck(listener); listener = null; } }
@Override public IBasicMessage createCurrentMessage() { IMessageData messageData = checker.getMessageData(); if (messageData == null) { return getDefaultMessage(); } return new BasicMessage(getString(messageData.getKey()), messageData.getType()); }
@Override public String getDescription() { Boolean success = checker.isCheckSuccessful(); if (success == null) { return getString("Help.UpdateCheck.Checking"); // $NON-NLS-1$ } else if (success) { return getString("Help.UpdateCheck.Success"); // $NON-NLS-1$ } return getString("Help.UpdateCheck.Failure"); // $NON-NLS-1$ }
@Override public JComponent createContent() { JPanel panel = new JPanel(new GridDialogLayout(2, false)); panel.add( new JLabel(getString("Help.UpdateCheck.CurrentVersion") + ":"), IGridDialogLayoutData.DEFAULT); // $NON-NLS-1$ //$NON-NLS-2$ panel.add(new JLabel(checker.getCurrentVersion()), IGridDialogLayoutData.DEFAULT); panel.add( new JLabel(getString("Help.UpdateCheck.LatestVersion") + ":"), IGridDialogLayoutData.DEFAULT); // $NON-NLS-1$ //$NON-NLS-2$ panel.add(latestVersionLabel, IGridDialogLayoutData.DEFAULT); return panel; }
public UpdateDialogPage(IResources resources, IUpdateChecker checker) { super(resources.getString("Help.UpdateCheck.Checking")); // $NON-NLS-1$ this.resources = resources; this.checker = checker; checker.addDataChangedListener( new IChangeListener() { @Override public void changeOccurred() { updateLatestVersionLabel(); } }); updateLatestVersionLabel(); }
private void updateLatestVersionLabel() { String latestVersion = checker.getLatestVersion(); latestVersionLabel.setText(latestVersion != null ? latestVersion : "?.??"); // $NON-NLS-1$ }