类java.util.Observable源码实例Demo

下面列出了怎么用java.util.Observable的API类实例代码及写法,或者点击链接到github查看源代码。

源代码1 项目: Qora   文件: TransactionsTableModel.java
@SuppressWarnings("unchecked")	
public synchronized void syncUpdate(Observable o, Object arg)
{
	ObserverMessage message = (ObserverMessage) arg;
	
	//CHECK IF NEW LIST
	if(message.getType() == ObserverMessage.LIST_TRANSACTION_TYPE)
	{
		if(this.transactions == null)
		{
			this.transactions = (SortableList<byte[], Transaction>) message.getValue();
			this.transactions.registerObserver();
			this.transactions.sort(TransactionMap.TIMESTAMP_INDEX, true);
		}
		
		this.fireTableDataChanged();
	}
	
	//CHECK IF LIST UPDATED
	if(message.getType() == ObserverMessage.ADD_TRANSACTION_TYPE || message.getType() == ObserverMessage.REMOVE_TRANSACTION_TYPE)
	{
		this.fireTableDataChanged();
	}	
}
 
源代码2 项目: pokemon-go-xposed-mitm   文件: DexDex.java
public static void showUiBlocker(Activity startActivity, CharSequence title, CharSequence msg) {
    if(debug) {
        Log.d(TAG, "showUiBlocker() for " + startActivity);
    }
    uiBlockedActivity = startActivity;
    final ProgressDialog progressDialog = new ProgressDialog(startActivity);
    progressDialog.setMessage(msg);
    progressDialog.setTitle(title);
    progressDialog.setIndeterminate(true);
    dexOptProgressObserver = new Observer() {
        @Override
        public void update(Observable observable, Object o) {
            if(o==Integer.valueOf(PROGRESS_COMPLETE)) {
                progressDialog.dismiss();
            }
        }
    };
    
    progressDialog.show();
}
 
源代码3 项目: AssistantBySDK   文件: SynthesizerBase.java
/**
 * 合成语音,等待合成的队列将被清空,合成中的语音将被打断,打断后马上开始合成
 *
 * @param msg
 * @return
 */
public io.reactivex.Observable<SpeechMsg> startSpeakAbsolute(SpeechMsg msg) {
    Log.i(TAG, "startSpeakAbsolute>>>>>>>>" + msg.text());
    sLock.lock();
    int r = 0;
    try {
        if (isSpeaking()) {
            Log.e(TAG, "startSpeakAbsolute isSpeaking........");
            if (mediator.compareSpeechMsg(msg, currentMessage)) {       //比较合成文本优先级(导航最优)
                stopSpeakingAbsolte(msg);    //准备合成的文本为导航相关,停止当前合成,优先播放
            } else {
                Log.e(TAG, "startSpeakAbsolute>>addMessageWaitSpeak");
                messages.offer(msg); //准备合成的文本为普通文本,放入合成队列中等待,当前合成完成后在合成
                return io.reactivex.Observable.empty();
            }
        }
        return startSpeak(msg);
    } finally {
        sLock.unlock();
    }
}
 
源代码4 项目: sarl   文件: MainProjectWizardPage.java
@SuppressWarnings("synthetic-access")
@Override
public void update(Observable observable, Object arg) {
	try {
		final IWorkspace workspace = JavaPlugin.getWorkspace();
		final String name = MainProjectWizardPage.this.nameGroup.getName();
		checkProjectName(workspace, name);
		final IProject handle = checkProjectExist(workspace, name);
		final String location = MainProjectWizardPage.this.locationGroup.getLocation().toOSString();
		final IPath projectPath = checkLocationSyntax(location);
		validateLocation(workspace, handle, projectPath);

		setErrorMessage(null);
		setMessage(null);
		setPageComplete(true);

	} catch (ValidationException e) {
		setMessage(e.getMessage());
		setErrorMessage(e.getErrorMessage());
		setPageComplete(false);
	}
}
 
源代码5 项目: gemfirexd-oss   文件: SyncOnCommit.java
public void update(Observable obj, Object arg) {

		if (SanityManager.DEBUG) {
			if (arg == null)
				SanityManager.THROWASSERT("still on observr list " + this);
		}

		if (arg.equals(RawTransaction.COMMIT)) {
			openContainerAndDoIt((RawTransaction) obj);
		}

		// remove this object if we are commiting, aborting or the container is being dropped
		if (arg.equals(RawTransaction.COMMIT) || arg.equals(RawTransaction.ABORT)
			|| arg.equals(identity)) {
			obj.deleteObserver(this);
		}
	}
 
源代码6 项目: Robot-Overlord-App   文件: Sixi2Sim.java
@Override
public void update(Observable obs, Object obj) {
	if(obs == endEffector) {
		if(!lock.isLocked()) {
			lock.lock();
			//setPoseIK(endEffector.getPoseWorld());
			endEffectorTarget.setPoseWorld(endEffector.getPoseWorld());
			lock.unlock();
		}
	}
	if(obs==endEffectorTarget) {
		if(!lock.isLocked()) {
			lock.lock();
			setPoseIK(endEffectorTarget.getPoseWorld());
			lock.unlock();
		}
	}
	super.update(obs, obj);
}
 
源代码7 项目: bitso-java   文件: BitsoWebSocketObserver.java
public void update(Observable o, Object arg) {
    // Update message
    if(arg instanceof String){
        String messageReceived = ((String) arg);
        System.out.println(messageReceived);
        mMessagesReceived.add(messageReceived);
    }
    
    // On connect/disconnect
    if(arg instanceof Boolean){
        mWSConnected = ((Boolean) arg);
        if(mWSConnected){
            System.out.println("Web socket is now connected");
        }else{
            System.out.println("Web socket is now disconnected");
        }
        
    }
}
 
源代码8 项目: opensim-gui   文件: AnalyzeAndForwardToolPanel.java
public void update(Observable observable, Object obj) {
     if (observable instanceof OpenSimDB){
        if (obj instanceof ModelEvent) {
             if (OpenSimDB.getInstance().hasModel(toolModel.getOriginalModel()))
                 return;
             else {
                 toolModel.deleteObserver(this);
                 OpenSimDB.getInstance().deleteObserver(this);
                 NotifyDescriptor.Message dlg =
                       new NotifyDescriptor.Message("Model used by the tool is being closed. Closing tool.");
                 DialogDisplayer.getDefault().notify(dlg);
                 this.close();
                 return;
             }        
        }
        return;
    }
   if(observable == toolModel && obj == AbstractToolModel.Operation.ExecutionStateChanged)

   //if(observable == toolModel && (obj == AbstractToolModel.Operation.ExecutionStateChanged ||
   //        obj == AbstractToolModel.Operation.InputDataChanged))
      updateDialogButtons();
   else
      updateFromModel(); 
}
 
@Override
public void update(Observable arg0, Object arg1) {
    if (!(arg1 instanceof Object[])) {
        return;
    }
    final Object[] args = (Object[]) arg1;

    if (!(args[WRAPPER_ARG_IDX] instanceof TravelMvcWrapperBean)) {
        return;
    }
    TravelMvcWrapperBean wrapper = (TravelMvcWrapperBean) args[WRAPPER_ARG_IDX];
    
    final TravelDocument document = wrapper.getTravelDocument();
    final Integer deleteIndex = (Integer) args[SELECTED_LINE_ARG_IDX];
    
    wrapper.getAccountDistributionsourceAccountingLines().remove(deleteIndex.intValue());
    int lineNumber = wrapper.getAccountDistributionnextSourceLineNumber() - 1;
    wrapper.setAccountDistributionnextSourceLineNumber(lineNumber);
    int counter = 1;
    for (AccountingLine line : wrapper.getAccountDistributionsourceAccountingLines()){
        line.setSequenceNumber(new Integer(counter));
        counter++;
    }
    
    getAccountingDistributionService().buildDistributionFrom(document);
}
 
源代码10 项目: kfs   文件: DistributeAccountingLinesEvent.java
@Override
public void update(Observable arg0, Object arg1) {

    final TravelMvcWrapperBean wrapper = (TravelMvcWrapperBean) arg1;
    boolean rulePassed = true;
    wrapper.setDistribution(getAccountingDistributionService().buildDistributionFrom(wrapper.getTravelDocument()));
    // check any business rules
    rulePassed &= getRuleService().applyRules(new AssignDistributionAccountingLinesEvent(TemPropertyConstants.NEW_IMPORTED_EXPENSE_LINE, wrapper.getTravelDocument(), wrapper));

    if (rulePassed){
        List<TemSourceAccountingLine> newLines = getAccountingDistributionService().distributionToSouceAccountingLines(wrapper.getAccountDistributionsourceAccountingLines(),
                wrapper.getDistribution(), wrapper.getTravelDocument().getSourceTotal(), wrapper.getTravelDocument().getExpenseLimit());

        for (TemSourceAccountingLine newLine : newLines) {
            wrapper.getTravelDocument().addSourceAccountingLine(newLine);
        }
        wrapper.setAccountDistributionsourceAccountingLines(new ArrayList<TemDistributionAccountingLine>());
        wrapper.setAccountDistributionnextSourceLineNumber(new Integer(1));
    }

}
 
源代码11 项目: AndroidStudyDemo   文件: EventDispatch.java
public void update(Observable o, Object arg) {
    // 事件的源头
    Product product = (Product) arg;
    // 事件
    ProductEvent event = (ProductEvent) o;

    // 处理者处理,这里是中介者模式的核心,可以是很复杂的业务逻辑
    for (EventCustomer e : customer) {
        // 处理能力是否匹配
        for (EventCustomType t : e.getCustomType()) {
            if (t.getValue() == event.getEventType().getValue()) {
                e.exec(event);
            }
        }

    }
}
 
源代码12 项目: JVoiceXML   文件: TalkingHead.java
/**
 * Handles incoming BML Packages & executes BML-Script.
 */
@Override
public final void update(final Observable arg0, final Object arg1) {
    if (arg0 == talkingHeadInputConnection) {
        // Cast BML-Message
        // BML msg = (BML) arg1;
        BML msg = null;
        try {
            msg = talkingHeadBMLParser.generateBML((String) arg1);
        } catch (JDOMException | IOException e) {
            e.printStackTrace();
        }

        if (msg == null) {
            return;
        }

        // Reset
        talkingHeadAnimator.setCurrentAnimationID("[CURRENT_ID]");

        // Start Execution
        talkingHeadBMLExecutor.start(msg);
    }
}
 
源代码13 项目: Qora   文件: WalletNameSalesTableModel.java
@SuppressWarnings("unchecked")
public synchronized void syncUpdate(Observable o, Object arg)
{
	ObserverMessage message = (ObserverMessage) arg;
	
	//CHECK IF NEW LIST
	if(message.getType() == ObserverMessage.LIST_NAME_SALE_TYPE)
	{
		if(this.nameSales == null)
		{
			this.nameSales = (SortableList<Tuple2<String, String>, BigDecimal>) message.getValue();
			this.nameSales.registerObserver();
			this.nameSales.sort(NameSaleMap.NAME_INDEX);
		}
		
		this.fireTableDataChanged();
	}
	
	//CHECK IF LIST UPDATED
	if(message.getType() == ObserverMessage.ADD_NAME_SALE_TYPE || message.getType() == ObserverMessage.REMOVE_NAME_SALE_TYPE)
	{
		this.fireTableDataChanged();
	}	
}
 
源代码14 项目: datasync   文件: MappingPanelContainer.java
@Override
public void update(Observable o, Object arg) {
    ControlFileModel model = (ControlFileModel) o;
    //Check to the if the structure has changed.  If it has, then we need to layout it out again.
    if (model.getCsvModel().getColumnCount() != lastColumnsCount)
        initializeComponents();
    else {
        //If not, then update each of the components
        for (Object obj : this.getComponents()) {
            if (obj.getClass().equals(MappingPanel.class)) {
                MappingPanel panel = (MappingPanel) obj;
                panel.update();
            }
        }
    }
}
 
源代码15 项目: deltachat-android   文件: MapActivity.java
@Override
public void update(Observable o, Object arg) {
    if (o instanceof DcLocation) {
        this.dcLocation = (DcLocation) o;
        Log.d(TAG, "show marker on map: " +
                dcLocation.getLastLocation().getLatitude() + ", " +
                dcLocation.getLastLocation().getLongitude());
        //TODO: consider implementing a button -> center map to current location
    }
}
 
源代码16 项目: stendhal   文件: NPCChatting.java
@Override
public void update(Observable o, Object arg) {
	first.clearPath();
	first.pathnotifier.deleteObservers();
	count=0;
	setupDialog();
}
 
源代码17 项目: kfs   文件: RemoveActualExpenseDetailEvent.java
@Override
public void update(Observable arg0, Object arg1) {
    if (!(arg1 instanceof Object[])) {
        return;
    }
    final Object[] args = (Object[]) arg1;
    LOG.debug(args[WRAPPER_ARG_IDX]);
    if (!(args[WRAPPER_ARG_IDX] instanceof TravelMvcWrapperBean)) {
        return;
    }
    final TravelMvcWrapperBean wrapper = (TravelMvcWrapperBean) args[WRAPPER_ARG_IDX];

    final TravelDocument document = wrapper.getTravelDocument();
    final Integer deleteIndex = (Integer) args[SELECTED_LINE_ARG_IDX];
    final Integer deleteDetailIndex = (Integer) args[SELECTED_DETAIL_LINE_ARG_IDX];

    ActualExpense line = document.getActualExpenses().get(deleteIndex.intValue());
    document.removeExpenseDetail(line, deleteDetailIndex);

    List<ActualExpense> actualExpenses = wrapper.getNewActualExpenseLines();

    KualiDecimal detailTotal = line.getTotalDetailExpenseAmount();

    if (detailTotal.isLessThan(line.getExpenseAmount())){
        KualiDecimal remainderExpense = line.getExpenseAmount().subtract(detailTotal);
        KualiDecimal remainderConverted = line.getConvertedAmount().subtract(new KualiDecimal(detailTotal.bigDecimalValue().multiply(line.getCurrencyRate())));

        wrapper.getNewActualExpenseLines().get(deleteIndex).setExpenseAmount(remainderExpense);
        wrapper.getNewActualExpenseLines().get(deleteIndex).setConvertedAmount(remainderConverted);
    }

    ExpenseUtils.calculateMileage(document, document.getActualExpenses());
    for (String disabledProperty : document.getDisabledProperties().keySet()) {
        getTravelDocumentService().restorePerDiemProperty(document, disabledProperty);
    }
    wrapper.setDistribution(getAccountingDistributionService().buildDistributionFrom(document));
    document.getDisabledProperties().clear();

}
 
源代码18 项目: Robot-Overlord-App   文件: ObserverTest3.java
@Override
public void update(Observable arg0, Object arg1) {
	int v = (int)arg1;
	System.out.println("update("+v+")");
	field.setValue(v);

	if(lock.isLocked()) return;
	lock.lock();
	label.setText(Integer.toString(v));
	lock.unlock();
}
 
源代码19 项目: PacketProxy   文件: CharSets.java
@Override
public void update(Observable o, Object arg) {
	DatabaseMessage message = (DatabaseMessage)arg;
	try {
		switch (message) {
		case PAUSE:
			// TODO ロックを取る
			break;
		case RESUME:
			// TODO ロックを解除
			break;
		case DISCONNECT_NOW:
			break;
		case RECONNECT:
			database = Database.getInstance();
			dao = database.createTable(CharSet.class, this);
			notifyObservers(arg);
			break;
		case RECREATE:
			database = Database.getInstance();
			dao = database.createTable(CharSet.class, this);
			break;
		default:
			break;
		}
	} catch (Exception e) {
		e.printStackTrace();
	}
}
 
源代码20 项目: bitmask_android   文件: EipFragment.java
@Override
public void update(Observable observable, Object data) {
    if (observable instanceof EipStatus) {
        eipStatus = (EipStatus) observable;
        Activity activity = getActivity();
        if (activity != null) {
            activity.runOnUiThread(this::handleNewState);
        } else {
            Log.e("EipFragment", "activity is null");
        }
    } else if (observable instanceof ProviderObservable) {
        provider = ((ProviderObservable) observable).getCurrentProvider();
    }
}
 
源代码21 项目: UltimateAndroid   文件: MaterialAnimatedSwitch.java
@Override public void update(Observable observable, Object data) {
  BallFinishObservable ballFinishObservable = (BallFinishObservable) observable;
  isClickable = !ballFinishObservable.getState().equals(BallFinishObservable.BallState.MOVE);

  if (ballFinishObservable.getState().equals(BallFinishObservable.BallState.PRESS)) {
    if (onCheckedChangeListener != null) {
      onCheckedChangeListener.onCheckedChanged(true);
    }
  } else if (ballFinishObservable.getState().equals(BallFinishObservable.BallState.RELEASE)) {
    if (onCheckedChangeListener != null) {
      onCheckedChangeListener.onCheckedChanged(false);
    }
  }
}
 
源代码22 项目: Qora   文件: PollsTableModel.java
@Override
public void update(Observable o, Object arg) 
{	
	try
	{
		this.syncUpdate(o, arg);
	}
	catch(Exception e)
	{
		//GUI ERROR
	}
}
 
源代码23 项目: InteractiveChart   文件: Chart.java
@Override public void update(Observable o, Object arg) {
  switch ((ObserverArg) arg) {
    case normal:
      loadingComplete(false);
      break;
    case init:
      initChartState();
    case add:
      loadingComplete(false);
    case push:
      onDataChange();
      lastEntrySize = render.getAdapter().getCount();
      break;
  }
}
 
源代码24 项目: Qora   文件: BalancesComboBoxModel.java
private synchronized void syncUpdate(Observable o, Object arg)
{
	ObserverMessage message = (ObserverMessage) arg;
	
	if(message.getType() == ObserverMessage.ADD_BALANCE_TYPE || message.getType() == ObserverMessage.REMOVE_BALANCE_TYPE)
	{
		this.update();
	}
}
 
源代码25 项目: Qora   文件: TradesTableModel.java
public synchronized void syncUpdate(Observable o, Object arg)
{
	ObserverMessage message = (ObserverMessage) arg;
	
	//CHECK IF LIST UPDATED
	if(message.getType() == ObserverMessage.ADD_TRADE_TYPE || message.getType() == ObserverMessage.REMOVE_TRADE_TYPE)
	{
		this.fireTableDataChanged();
	}
}
 
源代码26 项目: Qora   文件: WalletTransactionsTableModel.java
@Override
public void update(Observable o, Object arg) 
{
	try
	{
		this.syncUpdate(o, arg);
	}
	catch(Exception e)
	{
		//GUI ERROR
	}
}
 
源代码27 项目: desktopclient-java   文件: ContactDetails.java
@Override
public void updateOnEDT(Observable o, Object arg) {
    // may have changed: avatar...
    mAvatarImage.update();
    // ...contact name...
    mNameField.setText(mContact.getName());
    mNameField.setInputPrompt(mContact.getName());
    Contact.Subscription subscription = mContact.getSubScription();
    String auth = Tr.tr("Unknown");
    switch(subscription) {
        case PENDING: auth = Tr.tr("Awaiting reply"); break;
        case SUBSCRIBED: auth = Tr.tr("Authorized"); break;
        case UNSUBSCRIBED: auth = Tr.tr("Not authorized"); break;
    }
    // ...subscription...
    mSubscrButton.setVisible(subscription != Contact.Subscription.SUBSCRIBED);
    mSubscrButton.setEnabled(subscription == Contact.Subscription.UNSUBSCRIBED);
    mSubscrStatus.setText(auth);
    // ...and/or key
    String hasKey = "<html>";
    if (mContact.hasKey()) {
        hasKey += Tr.tr("Available")+"</html>";
        TooltipManager.removeTooltips(mKeyStatus);
        mFPArea.setText(Utils.fingerprint(mContact.getFingerprint()));
        mFPLabel.setVisible(true);
        mFPArea.setVisible(true);
    } else {
        hasKey += "<font color='red'>"+Tr.tr("Not Available")+"</font></html>";
        String keyText = Tr.tr("The public key for this contact could not yet be received");
        TooltipManager.addTooltip(mKeyStatus, keyText);
        mFPLabel.setVisible(false);
        mFPArea.setVisible(false);
    }
    mKeyStatus.setText(hasKey);
    mUpdateButton.setEnabled(mContact.isKontalkUser() &&
            subscription == Contact.Subscription.SUBSCRIBED);
}
 
源代码28 项目: Qora   文件: TradesTableModel.java
@Override
public void update(Observable o, Object arg) 
{	
	try
	{
		this.syncUpdate(o, arg);
	}
	catch(Exception e)
	{
		//GUI ERROR
	}
}
 
源代码29 项目: Qora   文件: BalancesTableModel.java
@Override
public void update(Observable o, Object arg) 
{
	try
	{
		this.syncUpdate(o, arg);
	}
	catch(Exception e)
	{
		//GUI ERROR
	}
}
 
源代码30 项目: android-maps-utils   文件: GeoJsonFeature.java
/**
 * Update is called if the developer modifies a style that is stored in this feature
 *
 * @param observable GeoJsonStyle object
 * @param data       null, no extra argument is passed through the notifyObservers method
 */
@Override
public void update(Observable observable, Object data) {
    if (observable instanceof GeoJsonStyle) {
        checkRedrawFeature((GeoJsonStyle) observable);
    }
}
 
 类所在包
 同包方法