gt:         else if (ev.matchesDefinition(entityChangedEventDefinition))
context: package org.ovirt.engine.ui.uicommonweb.models.storage;
  
  import java.util.ArrayList;
  import java.util.Date;
  import java.util.List;
  
  import org.ovirt.engine.core.common.action.StorageServerConnectionParametersBase;
  import org.ovirt.engine.core.common.action.VdcActionParametersBase;
  import org.ovirt.engine.core.common.action.VdcActionType;
  import org.ovirt.engine.core.common.action.VdcReturnValueBase;
  import org.ovirt.engine.core.common.businessentities.StorageDomainType;
  import org.ovirt.engine.core.common.businessentities.StorageServerConnections;
  import org.ovirt.engine.core.common.businessentities.StorageType;
  import org.ovirt.engine.core.common.businessentities.VDS;
  import org.ovirt.engine.core.common.queries.DiscoverSendTargetsQueryParameters;
  import org.ovirt.engine.core.common.queries.VdcQueryReturnValue;
  import org.ovirt.engine.core.common.queries.VdcQueryType;
  import org.ovirt.engine.core.common.utils.ObjectUtils;
  import org.ovirt.engine.ui.frontend.AsyncQuery;
  import org.ovirt.engine.ui.frontend.Frontend;
  import org.ovirt.engine.ui.frontend.INewAsyncCallback;
  import org.ovirt.engine.ui.uicommonweb.UICommand;
  import org.ovirt.engine.ui.uicommonweb.help.HelpTag;
  import org.ovirt.engine.ui.uicommonweb.models.EntityModel;
  import org.ovirt.engine.ui.uicommonweb.models.SearchableListModel;
  import org.ovirt.engine.ui.uicommonweb.validation.IValidation;
  import org.ovirt.engine.ui.uicommonweb.validation.IntegerValidation;
  import org.ovirt.engine.ui.uicommonweb.validation.NotEmptyValidation;
  import org.ovirt.engine.ui.uicompat.ConstantsManager;
  import org.ovirt.engine.ui.uicompat.Event;
  import org.ovirt.engine.ui.uicompat.EventArgs;
  import org.ovirt.engine.ui.uicompat.FrontendActionAsyncResult;
  import org.ovirt.engine.ui.uicompat.IFrontendActionAsyncCallback;
  import org.ovirt.engine.ui.uicompat.ObservableCollection;
  import org.ovirt.engine.ui.uicompat.PropertyChangedEventArgs;
  
  @SuppressWarnings("unused")
  public abstract class SanStorageModelBase extends SearchableListModel implements IStorageModel
  {
  
      private UICommand privateUpdateCommand;
  
      @Override
      public UICommand getUpdateCommand()
      {
          return privateUpdateCommand;
      }
  
      private void setUpdateCommand(UICommand value)
      {
          privateUpdateCommand = value;
      }
  
      private UICommand loginCommand;
  
      public UICommand getLoginCommand()
      {
          return loginCommand;
      }
  
      private void setLoginCommand(UICommand value)
      {
          loginCommand = value;
      }
  
      private UICommand privateDiscoverTargetsCommand;
  
      public UICommand getDiscoverTargetsCommand()
      {
          return privateDiscoverTargetsCommand;
      }
  
      private void setDiscoverTargetsCommand(UICommand value)
      {
          privateDiscoverTargetsCommand = value;
      }
  
      private StorageModel privateContainer;
  
      @Override
      public StorageModel getContainer()
      {
          return privateContainer;
      }
  
      @Override
      public void setContainer(StorageModel value)
      {
          privateContainer = value;
      }
  
      private StorageDomainType privateRole = StorageDomainType.values()[0];
  
      @Override
      public StorageDomainType getRole()
      {
          return privateRole;
      }
  
      @Override
      public void setRole(StorageDomainType value)
      {
          privateRole = value;
      }
  
      @Override
      public abstract StorageType getType();
  
      private EntityModel<String> privateAddress;
  
      public EntityModel<String> getAddress()
      {
          return privateAddress;
      }
  
      private void setAddress(EntityModel<String> value)
      {
          privateAddress = value;
      }
  
      private EntityModel<String> privatePort;
  
      public EntityModel<String> getPort()
      {
          return privatePort;
      }
  
      private void setPort(EntityModel<String> value)
      {
          privatePort = value;
      }
  
      private EntityModel<String> privateUserName;
  
      public EntityModel<String> getUserName()
      {
          return privateUserName;
      }
  
      private void setUserName(EntityModel<String> value)
      {
          privateUserName = value;
      }
  
      private EntityModel<String> privatePassword;
  
      public EntityModel<String> getPassword()
      {
          return privatePassword;
      }
  
      private void setPassword(EntityModel<String> value)
      {
          privatePassword = value;
      }
  
      private EntityModel<Boolean> privateUseUserAuth;
  
      public EntityModel<Boolean> getUseUserAuth()
      {
          return privateUseUserAuth;
      }
  
      private void setUseUserAuth(EntityModel<Boolean> value)
      {
          privateUseUserAuth = value;
      }
  
      private boolean proposeDiscoverTargets;
  
      public boolean getProposeDiscoverTargets()
      {
          return proposeDiscoverTargets;
      }
  
      public void setProposeDiscoverTargets(boolean value)
      {
          if (proposeDiscoverTargets != value)
          {
              proposeDiscoverTargets = value;
              onPropertyChanged(new PropertyChangedEventArgs("ProposeDiscoverTargets")); //$NON-NLS-1$
          }
      }
  
      private boolean isAllLunsSelected;
  
      public boolean getIsAllLunsSelected()
      {
          return isAllLunsSelected;
      }
  
      public void setIsAllLunsSelected(boolean value)
      {
          if (isAllLunsSelected != value)
          {
              isAllLunsSelected = value;
              isAllLunsSelectedChanged();
              onPropertyChanged(new PropertyChangedEventArgs("IsAllLunsSelected")); //$NON-NLS-1$
          }
      }
  
      private boolean ignoreGrayedOut;
  
      public boolean isIgnoreGrayedOut()
      {
          return ignoreGrayedOut;
      }
  
      public void setIgnoreGrayedOut(boolean value)
      {
          if (ignoreGrayedOut != value)
          {
              ignoreGrayedOut = value;
              onPropertyChanged(new PropertyChangedEventArgs("IgnoreGrayedOut")); //$NON-NLS-1$
          }
      }
  
      private boolean multiSelection;
  
      public boolean isMultiSelection()
      {
          return multiSelection;
      }
  
      public void setMultiSelection(boolean value)
      {
          if (multiSelection != value)
          {
              multiSelection = value;
              onPropertyChanged(new PropertyChangedEventArgs("MultiSelection")); //$NON-NLS-1$
          }
      }
  
      private String selectedLunWarning;
  
      public String getSelectedLunWarning()
      {
          return selectedLunWarning;
      }
  
      public void setSelectedLunWarning(String value)
      {
          if (!ObjectUtils.objectsEqual(selectedLunWarning, value))
          {
              selectedLunWarning = value;
              onPropertyChanged(new PropertyChangedEventArgs("SelectedLunWarning")); //$NON-NLS-1$
          }
      }
  
      private String privateHash;
  
      public String getHash()
      {
          return privateHash;
      }
  
      public void setHash(String value)
      {
          privateHash = value;
      }
  
      private ArrayList<SanTargetModel> targetsToConnect;
  
      protected SanStorageModelBase()
      {
          Frontend.getInstance().getQueryStartedEvent().addListener(this);
          Frontend.getInstance().getQueryCompleteEvent().addListener(this);
  
          setHelpTag(HelpTag.SanStorageModelBase);
          setHashName("SanStorageModelBase"); //$NON-NLS-1$
          setHash(getHashName() + new Date());
  
          setUpdateCommand(new UICommand("Update", this)); //$NON-NLS-1$
          UICommand tempVar = new UICommand("Login", this); //$NON-NLS-1$
          tempVar.setIsExecutionAllowed(false);
          setLoginCommand(tempVar);
          setDiscoverTargetsCommand(new UICommand("DiscoverTargets", this)); //$NON-NLS-1$
  
          setAddress(new EntityModel<String>());
          EntityModel<String> tempVar2 = new EntityModel<String>();
          tempVar2.setEntity("3260"); //$NON-NLS-1$
          setPort(tempVar2);
          setUserName(new EntityModel<String>());
          setPassword(new EntityModel<String>());
          EntityModel<Boolean> tempVar3 = new EntityModel<Boolean>();
          tempVar3.setEntity(false);
          setUseUserAuth(tempVar3);
          getUseUserAuth().getEntityChangedEvent().addListener(this);
  
          updateUserAuthFields();
      }
  
      @Override
      public void eventRaised(Event ev, Object sender, EventArgs args)
      {
          super.eventRaised(ev, sender, args);
  
          if (ev.matchesDefinition(SanTargetModel.loggedInEventDefinition))
          {
              sanTargetModel_LoggedIn(sender, args);
          }
  