format 75
"tasks" // iplan::models::wholesale::tasks
  revision 39
  modified_by 5 "jviqueira"
  // class settings
  //class diagram settings
  draw_all_relations default hide_attributes default hide_operations default hide_getset_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_members_context default show_members_multiplicity default show_members_initialization default show_attribute_modifiers default member_max_width 0 show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_relation_modifiers default show_relation_visibility default show_infonote default shadow default show_stereotype_properties default
  //use case diagram settings
  package_name_in_tab default show_context default auto_label_position default draw_all_relations default class_drawing_mode default shadow default show_stereotype_properties default
  //sequence diagram settings
  show_full_operations_definition default write_horizontally default class_drawing_mode default drawing_language default draw_all_relations default shadow default show_stereotype_properties default show_class_context_mode default show_msg_context_mode default
  //collaboration diagram settings
  show_full_operations_definition default show_hierarchical_rank default write_horizontally default drawing_language default package_name_in_tab default show_context default show_msg_context default draw_all_relations default shadow default show_stereotype_properties default
  //object diagram settings
   write_horizontally default package_name_in_tab default show_context default auto_label_position default draw_all_relations default shadow default show_stereotype_properties default
  //component diagram settings
  package_name_in_tab default show_context default auto_label_position default draw_all_relations default shadow default
  draw_component_as_icon default show_component_req_prov default show_component_rea default show_stereotype_properties default
  //deployment diagram settings
  package_name_in_tab default show_context default write_horizontally default auto_label_position default draw_all_relations default shadow default
  draw_component_as_icon default show_component_req_prov default show_component_rea default show_stereotype_properties default
  //state diagram settings
  package_name_in_tab default show_context default auto_label_position default write_trans_label_horizontally default show_trans_definition default draw_all_relations default shadow default
  show_activities default region_horizontally default drawing_language default show_stereotype_properties default
  //activity diagram settings
  package_name_in_tab default show_context default show_opaque_action_definition default auto_label_position default write_flow_label_horizontally default draw_all_relations default shadow default
  show_infonote default drawing_language default show_stereotype_properties default
  
  php_dir "iplan/models/wholesale/tasks"
  classview 219397 "Wholesale Task Classes"
    //class diagram settings
    draw_all_relations default hide_attributes default hide_operations default hide_getset_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_members_context default show_members_multiplicity default show_members_initialization default show_attribute_modifiers default member_max_width 0 show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_relation_modifiers default show_relation_visibility default show_infonote default shadow default show_stereotype_properties default
    //collaboration diagram settings
    show_full_operations_definition default show_hierarchical_rank default write_horizontally default drawing_language default package_name_in_tab default show_context default show_msg_context default draw_all_relations default shadow default show_stereotype_properties default
    //object diagram settings
     write_horizontally default package_name_in_tab default show_context default auto_label_position default draw_all_relations default shadow default show_stereotype_properties default
    //sequence diagram settings
    show_full_operations_definition default write_horizontally default class_drawing_mode default drawing_language default draw_all_relations default shadow default show_stereotype_properties default show_class_context_mode default show_msg_context_mode default
    //state diagram settings
    package_name_in_tab default show_context default auto_label_position default write_trans_label_horizontally default show_trans_definition default draw_all_relations default shadow default
    show_activities default region_horizontally default drawing_language default show_stereotype_properties default
    //class settings
    //activity diagram settings
    package_name_in_tab default show_context default show_opaque_action_definition default auto_label_position default write_flow_label_horizontally default draw_all_relations default shadow default
    show_infonote default drawing_language default show_stereotype_properties default
    associated_deployment_view deploymentview_ref 232709 // Wholesale Task Deployment
    classdiagram 219781 "Wholesale Class DIagram Tasks"
      draw_all_relations default hide_attributes default hide_operations default hide_getset_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_members_context default show_members_multiplicity default show_members_initialization default show_attribute_modifiers default member_max_width 0 show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_relation_modifiers default show_relation_visibility default show_infonote default shadow default show_stereotype_properties default
      size A4
    end

    class 622981 "ProvisioningTask"
      visibility package 
      cpp_decl ""
      java_decl ""
      php_decl "${comment}${final}${abstract}class ${name}${extends}${implements} {
${members}}
"
      python_2_2 python_decl ""
      idl_decl ""
      explicit_switch_type ""
      
      classrelation 862597 // <association>
	relation_ref 856197 // <association>
      end

      attribute 825093 "method"
	protected explicit_type "string"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
	comment "@var string el mtodo a invocar"
      end

      classrelation 862725 // task (<unidirectional association>)
	relation 856325 --->
	  a role_name "task" multiplicity "1" protected
	    comment "@var TaskType el tipo de tarea para la que se dise el mtodo"
	    php "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	    classrelation_ref 862725 // task (<unidirectional association>)
	  b parent class_ref 616325 // TaskType
      end

      classrelation 862853 // params (<unidirectional association>)
	relation 856453 --->
	  a role_name "params" multiplicity "*" private
	    comment "@var ORMCollection la lista de parmetros que soporta el mtodo"
	    php "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	    classrelation_ref 862853 // params (<unidirectional association>)
	  b parent class_ref 616453 // Param
      end
    end

    class 616453 "Param"
      visibility package 
      cpp_decl ""
      java_decl ""
      php_decl "${comment}${final}${abstract}class ${name}${extends}${implements} {
${members}}
"
      python_2_2 python_decl ""
      idl_decl ""
      explicit_switch_type ""
      
      attribute 831749 "name"
	protected explicit_type "string"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
	comment "@var string el nombre del parmetro esperado"
      end

      attribute 818309 "order"
	protected explicit_type "int"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
	comment "@var int el nmero de orden del parmetro"
      end

      attribute 818437 "default"
	protected explicit_type "string"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
	comment "@var string el valor predeterminado para el parmetro"
      end

      attribute 818565 "paramType"
	protected explicit_type "string"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
	comment "@var string el tipo del parmetro."
      end

      attribute 838277 "nulleable"
	protected explicit_type "bool"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
	comment "@var boolean indica si el parmetro es o no obligatorio"
      end
    end

    class 616325 "TaskType"
      visibility package 
      cpp_decl ""
      java_decl ""
      php_decl "${comment}${final}${abstract}class ${name}${extends}${implements} {
${members}}
"
      python_2_2 python_decl ""
      idl_decl ""
      explicit_switch_type ""
      
      attribute 818053 "description"
	protected explicit_type "string"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
	comment "@var string la descripcin del tipo de tarea"
      end

      classrelation 855429 // <generalisation>
	relation 849285 ---|>
	  a public
	    php "${type}"
	    classrelation_ref 855429 // <generalisation>
	  b parent class_ref 141317 // ORMObject
      end
    end

    class 616197 "TaskParam"
      visibility package 
      cpp_decl ""
      java_decl ""
      php_decl "${comment}${final}${abstract}class ${name}${extends}${implements} {
${members}}
"
      python_2_2 python_decl ""
      idl_decl ""
      explicit_switch_type ""
      
      classrelation 854661 // task (<association>)
	relation 848645 ----
	  a role_name "task" multiplicity "1" protected
	    comment "@var Task la tarea a la que pertenece el parmetro."
	    php "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	    classrelation_ref 854661 // task (<association>)
	  b role_name "params" multiplicity "*" protected
	    comment "@var ORMCollection la lista de parmetros necesarios para realizar la tarea"
	    php "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	    classrelation_ref 855173 // params (<association>)
      end

      classrelation 854789 // <generalisation>
	relation 848773 ---|>
	  a public
	    php "${type}"
	    classrelation_ref 854789 // <generalisation>
	  b parent class_ref 141317 // ORMObject
      end

      attribute 817925 "value"
	protected explicit_type "string"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
	comment "@var string el valor del parmetro"
      end

      attribute 825221 "name"
	protected explicit_type "string"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
	comment "@var string el nombre del parmetro"
      end

      classrelation 869381 // forParams (<unidirectional association>)
	relation 862981 --->
	  a role_name "forParams" multiplicity "*" protected
	    comment "@var ORMCollection los parmetros que satisface este valor"
	    php "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	    classrelation_ref 869381 // forParams (<unidirectional association>)
	  b parent class_ref 616453 // Param
      end
    end

    class 616069 "ProvisioningSystem"
      visibility package 
      cpp_decl ""
      java_decl ""
      php_decl "${comment}${final}${abstract}class ${name}${extends}${implements} {
${members}}
"
      python_2_2 python_decl ""
      idl_decl ""
      explicit_switch_type ""
      
      attribute 816901 "name"
	protected explicit_type "string"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
	comment "@var string el nombre del sistema contra el cual se puede aprovisionar"
      end

      attribute 817029 "description"
	protected explicit_type "string"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
	comment "@var string una descripcin del objetivo del sistema"
      end

      classrelation 854533 // <generalisation>
	relation 848517 ---|>
	  a public
	    php "${type}"
	    classrelation_ref 854533 // <generalisation>
	  b parent class_ref 141317 // ORMObject
      end

      classrelation 862469 // system (<association>)
	relation 856197 ----
	  a role_name "system" multiplicity "*" protected
	    comment "@var ORMCollection la lista de mtodos de provisioning asociados al sistema"
	    php "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	    classrelation_ref 862469 // system (<association>)
	  b role_name "system" multiplicity "1" private
	    comment "@var ProvisioningSystem el sistema para el cual se ejecuta el mtodo"
	    php "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	    classrelation_ref 862597 // <association>
      end

      operation 1379589 "define"
	class_operation preserve_cpp_body_indent public explicit_return_type ""
	nparams 1
	  param inout name "orm" type class_ref 167685 // ORM
	    defaultvalue "null"
	
	preserve_java_body_indent 
	preserve_php_body_indent php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${p0}${v0}${)}
{
  ${body}}
"
	preserve_python_body_indent 
	
	comment "Retorna un objeto de definicin predeterminado al cual hay que agregarle los mapeos pertinentes.
@param iplan\\orm\\ORM $orm el manejador de objetos para el cual se registra la definicin
@return ORMDefinition la definicin default"
      end
    end

    class 609541 "Task"
      visibility package 
      cpp_decl ""
      java_decl ""
      php_decl "${comment}${final}${abstract}class ${name}${extends}${implements} {
${members}}
"
      python_2_2 python_decl ""
      idl_decl ""
      explicit_switch_type ""
      
      attribute 810117 "TASK_PENDING"
	class_attribute package explicit_type "int"
	init_value "5001"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
	comment "@var int constante que se asigna al status "
      end

      attribute 817157 "TASK_COMPLETE"
	class_attribute package explicit_type "int"
	init_value "5002"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
	comment "@var int un estado que indica que la tarea est completada"
      end

      attribute 817541 "TASK_CANCELED"
	class_attribute package explicit_type "int"
	init_value "5003"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
	comment "@var int una constate que indica que la tarea ha sido cancelada"
      end

      attribute 817413 "status"
	protected explicit_type "int"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
	comment "@var int indica si la tarea est pendiente, completa o cancelada"
      end

      attribute 817285 "created"
	protected explicit_type "DateTime"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
	comment "@var DateTime la fecha en que se cre el registro"
      end

      attribute 817669 "completed"
	protected explicit_type "DateTime"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
	comment "@var DateTime la fecha en que se termin de realizar o que se cancel."
      end

      classrelation 847877 // user (<directional composition>)
	relation 841861 *-->
	  a role_name "user" protected
	    comment "@var User el usuario que gener la tarea"
	    php "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	    classrelation_ref 847877 // user (<directional composition>)
	  b parent class_ref 396165 // User
      end

      classrelation 854405 // <generalisation>
	relation 848389 ---|>
	  a public
	    php "${type}"
	    classrelation_ref 854405 // <generalisation>
	  b parent class_ref 141317 // ORMObject
      end

      classrelation 855173 // params (<association>)
	relation_ref 848645 // <association>
      end

      classrelation 855301 // taskType (<unidirectional association>)
	relation 849157 --->
	  a role_name "taskType" protected
	    comment "@var TaskType el tipo de tarea a realizar"
	    php "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	    classrelation_ref 855301 // taskType (<unidirectional association>)
	  b parent class_ref 616325 // TaskType
      end

      operation 1245445 "doIt"
	preserve_cpp_body_indent public explicit_return_type "bool"
	nparams 0
	
	preserve_java_body_indent 
	preserve_php_body_indent php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	preserve_python_body_indent 
	
	comment "Ejecuta la tarea especificada.

@return boolean un valor booleano que indica TRUE si anduvo bien o FALSE si no."
      end

      operation 1245573 "buildParams"
	preserve_cpp_body_indent public return_type class_ref 609541 // Task
	nparams 1
	  param in name "params" explicit_type "array"
	
	preserve_java_body_indent 
	preserve_php_body_indent php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${p0}${v0}${)}
{
  ${body}}
"
	preserve_python_body_indent 
	
	comment "Si est configurado el tipo de tarea, se fija en los parmetros y crea una representacin para cada uno.
@param array $params los parmetros que requiera la tarea en un arreglo donde la key es el name del parmetro y el value exactamente eso.

@return Task la tarea con los parmetros configurados"
      end

      classrelation 855557 // system (<unidirectional association>)
	relation 849413 --->
	  a role_name "system" multiplicity "1" protected
	    comment "@var ProvisioningSystem el sistema para el cual la tarea realiza el aprovisionamiento."
	    php "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	    classrelation_ref 855557 // system (<unidirectional association>)
	  b parent class_ref 616069 // ProvisioningSystem
      end
    end
  end

  deploymentview 232709 "Wholesale Task Deployment"
    //deployment diagram settings
    package_name_in_tab default show_context default write_horizontally default auto_label_position default draw_all_relations default shadow default
    draw_component_as_icon default show_component_req_prov default show_component_rea default show_stereotype_properties default
    ncouples 1
    key "uses" value "require_once \"iplan/orm/ORMDefinition.php\";"
    artifact 513541 "Task"
      stereotype "source"
      php_src "<?php
${require_once}
@{uses}

/**
* Author: Jorge Alexis Viqueira
* ${description}
*/
${definition}
?>"
      associated_classes
	class_ref 609541 // Task
      end
    end

    artifact 512901 "ProvisioningTask"
      stereotype "source"
      php_src "<?php
${require_once}
@{uses}

/**
* Author: Jorge Alexis Viqueira
* ${description}
*/
${definition}
?>"
      associated_classes
	class_ref 622981 // ProvisioningTask
      end
    end

    artifact 513029 "Param"
      stereotype "source"
      php_src "<?php
${require_once}
@{uses}

/**
* Author: Jorge Alexis Viqueira
* ${description}
*/
${definition}
?>"
      associated_classes
	class_ref 616453 // Param
      end
    end

    artifact 513157 "TaskType"
      stereotype "source"
      php_src "<?php
${require_once}
@{uses}

/**
* Author: Jorge Alexis Viqueira
* ${description}
*/
${definition}
?>"
      associated_classes
	class_ref 616325 // TaskType
      end
    end

    artifact 513285 "TaskParam"
      stereotype "source"
      php_src "<?php
${require_once}
@{uses}

/**
* Author: Jorge Alexis Viqueira
* ${description}
*/
${definition}
?>"
      associated_classes
	class_ref 616197 // TaskParam
      end
    end

    artifact 513413 "ProvisioningSystem"
      stereotype "source"
      php_src "<?php
${require_once}
@{uses}

/**
* Author: Jorge Alexis Viqueira
* ${description}
*/
${definition}
?>"
      associated_classes
	class_ref 616069 // ProvisioningSystem
      end
    end
  end
end
