com.trackstudio.kernel.manager
Class PrstatusManager

java.lang.Object
  extended by com.trackstudio.kernel.manager.KernelManager
      extended by com.trackstudio.kernel.manager.PrstatusManager

public class PrstatusManager
extends KernelManager


Field Summary
 
Fields inherited from class com.trackstudio.kernel.manager.KernelManager
hu
 
Method Summary
 java.lang.String clonePrstatus(java.lang.String prstatusId, java.lang.String userId, java.lang.String locale)
           
 java.lang.String createPrstatus(java.lang.String name, java.lang.String userId)
           
 void deletePrstatus(java.lang.String prstatusId)
           
 java.util.Set getAvailablePrstatusList(java.lang.String userId)
          Для пользователя, указанного в userId, достается список родителей, userChain.
 java.util.Set getCreatablePrstatusList(java.lang.String userId)
           
protected static PrstatusManager getInstance()
           
 java.util.Set getPrstatusList()
          Достаем все Prstatus из базы
 java.util.ArrayList getViewablePrstatusList(java.lang.String userId)
          Deprecated. В сущности, выполняет то же самое, что и getAvailablePrstatusList
 boolean isManagerAvailable(java.lang.String userId, java.lang.String managerId)
          Проверяем, может ли один пользователь быть менеджером для другого.
 void setRoles(java.lang.String prstatusId, java.util.List allowed, java.util.List denied)
           
 void updatePrstatus(java.lang.String prstatusId, java.lang.String name)
           
 
Methods inherited from class com.trackstudio.kernel.manager.KernelManager
getAcl, getAttachment, getCategory, getEmailType, getFilter, getFind, getIndex, getLicense, getLongText, getMailImport, getMessage, getPrstatus, getRegistration, getReport, getScript, getStep, getTask, getTSInfo, getUdf, getUser, getWorkflow
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

getInstance

protected static PrstatusManager getInstance()

updatePrstatus

public void updatePrstatus(java.lang.String prstatusId,
                           java.lang.String name)
                    throws GranException
Throws:
GranException

deletePrstatus

public void deletePrstatus(java.lang.String prstatusId)
                    throws GranException
Throws:
GranException

createPrstatus

public java.lang.String createPrstatus(java.lang.String name,
                                       java.lang.String userId)
                                throws GranException
Throws:
GranException

clonePrstatus

public java.lang.String clonePrstatus(java.lang.String prstatusId,
                                      java.lang.String userId,
                                      java.lang.String locale)
                               throws GranException
Throws:
GranException

setRoles

public void setRoles(java.lang.String prstatusId,
                     java.util.List allowed,
                     java.util.List denied)
              throws GranException
Throws:
GranException

getAvailablePrstatusList

public java.util.Set getAvailablePrstatusList(java.lang.String userId)
                                       throws GranException
Для пользователя, указанного в userId, достается список родителей, userChain. Затем по этому списку достаются все Prstatus, созданные этими пользователями Затем достаются children этого пользователя, которые не expired и active и для них тоже достаются статусы Множества соединяются и выдаются.

Parameters:
userId -
Returns:
Throws:
GranException

getCreatablePrstatusList

public java.util.Set getCreatablePrstatusList(java.lang.String userId)
                                       throws GranException
Throws:
GranException

getViewablePrstatusList

public java.util.ArrayList getViewablePrstatusList(java.lang.String userId)
                                            throws GranException
Deprecated. В сущности, выполняет то же самое, что и getAvailablePrstatusList

Выводит список prstatus для пользователя, которые тот может смотреть. Для этого берем список prstatus, созданных пользователем, и к ним добавляем getAvailablePrstatusList

Parameters:
userId -
Returns:
Throws:
GranException
See Also:
getAvailablePrstatusList(String)

isManagerAvailable

public boolean isManagerAvailable(java.lang.String userId,
                                  java.lang.String managerId)
                           throws GranException
Проверяем, может ли один пользователь быть менеджером для другого.
Для userId и managerId достаем соответствующие prstatus и сравниваем. Если они не одинаковы, то берем parent-статус от пользовательского и снова сравниваем со статусом менеджера. Так продолжаем, пока не дойдем до верха, либо не найдем совпадающие статусы. Если статусы находятся в одной ветви, и статус managerId выше, чем статус userId, проверяем, находятся ли managerId и владелец статуса userId в одной ветке, причем managerId должен являться parent-ом по отношению к владельцу статуса. Т.е. иметь права редактирования на этот статус, фактически. Если такие условия выполняются, то возвращаем true.

Parameters:
userId - Пользователь, для которого проверяем.
managerId - Потенциальный менеджер
Returns:
true - если может
Throws:
GranException

getPrstatusList

public java.util.Set getPrstatusList()
                              throws GranException
Достаем все Prstatus из базы

Returns:
Throws:
GranException


Copyright © 2002-2008 TrackStudio, Ltd. All Rights Reserved.