Android Open Source - MultiWork Dependency






From Project

Back to project page MultiWork.

License

The source code is released under:

Copyright (c) 2013, Torti Andr?s Fernando All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions a...

If you think the Android project MultiWork listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package com.utils.andres;
/*from  ww w. j  ava 2  s.c  o m*/
import java.util.HashMap;

public class Dependency{

  private int invalidationValue = -1;
  final String masterKey;
  final int masterValue;
  
  private HashMap<String, Pair<String, Integer>> dependencyMap = new HashMap<String, Pair<String, Integer>>();
  
  /**
   * Crea una dependencia
   * @param masterKey key maestra es la originaria desde donde se derivan las dependencias
   * @param masterValue el valor que debe tener la llave maestra para que se evaluen las dependencias
   * @param invalidationValue valor con el que se invalidan los valores de las keys en caso de que halla conflictos
   */
  public Dependency(String masterKey, int masterValue, int invalidationValue) {
    this.masterKey = masterKey;
    this.masterValue = masterValue;
    this.invalidationValue = invalidationValue;
  }
  
  /**
   * Agrega una dependencia secundaria que debe cumplirse si la dependencia maestra se cumple
   * @param key
   * @param value
   */
  public void addSecondaryDependency (String key, int value){
    dependencyMap.put(key, new Pair<String, Integer>(null, value));
  }
  
  /**
   * Agrega una dependencia secundaria referenciada que debe cumplirse si la dependencia maestra se cumple.
   * El parmetro key debe llevar un asterisco '*' en donde se quiere reemplazar por el valor otorgado por la key 'key'.
   * Un ejemplo, supongamos que el metodo es llamado as: addSecondaryReferencedDependency ("numero", "valor*", -30);
   *     Si el master key cumple la condicin entonces se revisa el valor del key "numero", supongamos que el valor es 8,
   *       se revisa ahora "valor8" reemplazando el '*' por el valor del 'refKey' y si el valor del key "valor8" es -30 entonces
   *       la dependencia se cumple de otro modo no y se escribe en el key en este caso "numero" el valor de invalidacin.
   * @param refKey
   * @param key
   * @param value
   */
  public void addSecondaryReferencedDependency (String refKey, String key, int value) {
    dependencyMap.put(key, new Pair<String, Integer>(refKey, value));
  }
  
  public String getMasterKey (){
    return masterKey;
  }
  
  public int getMasterValue (){
    return masterValue;
  }
  
  /**
   * Obtiene un HashMap con todas las dependencias excepto la master
   * @return
   */
  public HashMap<String, Pair<String, Integer>> getDependencyMap(){
    return dependencyMap;
  }
  
  /**
   * Valor con el cual se invalida en caso de que no se cumpla la dependencia
   * @param value
   */
  public void setInvalidationValue (int value) {
    invalidationValue = value;
  }
  
  public int getInvalidationValue (){
    return invalidationValue;
  }
  
}




Java Source Code List

com.bluetoothutils.andres.BTSingleSynchTransfer.java
com.bluetoothutils.andres.BluetoothHelper.java
com.bluetoothutils.andres.DeviceScanner.java
com.bluetoothutils.andres.OnBluetoothConnected.java
com.bluetoothutils.andres.OnDeviceSelected.java
com.bluetoothutils.andres.OnNewBluetoothDataReceived.java
com.frecuencimeter.andres.FrecView.java
com.frecuencimeter.andres.Frecuencia.java
com.multiwork.andres.ApplicationContext.java
com.multiwork.andres.LCView.java
com.multiwork.andres.MainMenu.java
com.multiwork.andres.MainPrefs.java
com.multiwork.andres.MenuListAdapter.java
com.protocolanalyzer.andres.AnalyzerExpandableAdapter.java
com.protocolanalyzer.andres.CRC16.java
com.protocolanalyzer.andres.LogicAnalizerPrefsFragment.java
com.protocolanalyzer.andres.LogicAnalizerPrefs.java
com.protocolanalyzer.andres.LogicAnalyzerActivity.java
com.protocolanalyzer.andres.LogicAnalyzerChartFragment.java
com.protocolanalyzer.andres.LogicAnalyzerListFragment.java
com.protocolanalyzer.andres.OnActionBarClickListener.java
com.protocolanalyzer.andres.OnDataClearedListener.java
com.protocolanalyzer.andres.OnDataDecodedListener.java
com.roboticarm.andres.BrazoRobot.java
com.roboticarm.andres.JoystickView.java
com.roboticarm.andres.Joystick.java
com.tjerkw.slideexpandable.library.AbstractSlideExpandableListAdapter.java
com.tjerkw.slideexpandable.library.ActionSlideExpandableListView.java
com.tjerkw.slideexpandable.library.ExpandCollapseAnimation.java
com.tjerkw.slideexpandable.library.SlideExpandableListAdapter.java
com.tjerkw.slideexpandable.library.SlideExpandableListView.java
com.tjerkw.slideexpandable.library.WrapperListAdapterImpl.java
com.utils.andres.ConflictChecker.java
com.utils.andres.Dependency.java
com.utils.andres.Pair.java