format 74
"Storages" // default::Nette::Caching::Storages
  revision 1
  modified_by 127 "neo"
  // 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
  
  comment "This file is part of the Nette Framework (http://nette.org) 
Copyright (c) 2004 David Grudl (http://davidgrudl.com) 
For the full copyright and license information, please view the file license.txt that was distributed with this source code."
  classview 131583 "Class View"
    //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
    class 150015 "FileStorage"
      visibility package 
      cpp_decl ""
      java_decl ""
      php_decl "${comment}${final}${visibility}${abstract}class ${name}${extends}${implements} {
${members}}
"
      python_2_2 python_decl ""
      idl_decl ""
      explicit_switch_type ""
      
      comment "Cache file storage."
      classrelation 141439 // <generalisation>
	relation 141439 ---|>
	  a public
	    php "${type}"
	    classrelation_ref 141439 // <generalisation>
	  b parent class_ref 142335 // Object
      end

      attribute 177535 "META_TIME"
	public explicit_type "string"
	init_value "'time'"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
      end

      attribute 177663 "META_SERIALIZED"
	public explicit_type "string"
	init_value "'serialized'"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
      end

      attribute 177791 "META_EXPIRE"
	public explicit_type "string"
	init_value "'expire'"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
      end

      attribute 177919 "META_DELTA"
	public explicit_type "string"
	init_value "'delta'"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
      end

      attribute 178047 "META_ITEMS"
	public explicit_type "string"
	init_value "'di'"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
      end

      attribute 178175 "META_CALLBACKS"
	public explicit_type "string"
	init_value "'callbacks'"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
      end

      attribute 178303 "FILE"
	class_attribute const_attribute public explicit_type "string"
	init_value "'file'"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
	comment "additional cache structure"
      end

      attribute 178431 "HANDLE"
	public explicit_type "string"
	init_value "'handle'"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
      end

      attribute 178559 "_gcProbability"
	class_attribute public explicit_type "float"
	init_value "0.001"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
      end

      attribute 178687 "_useDirectories"
	class_attribute public explicit_type "bool"
	init_value "TRUE"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
      end

      attribute 178815 "_dir"
	private explicit_type "string"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
      end

      attribute 178943 "_useDirs"
	private explicit_type "bool"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
      end

      attribute 179071 "_journal"
	private explicit_type ""
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
      end

      attribute 179199 "_locks"
	private explicit_type "array"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
      end

      operation 245631 "__construct"
	public explicit_return_type "void"
	nparams 2
	  param in name "$dir" explicit_type "mixed"
	  param in name "$journal" explicit_type ""
	    defaultvalue "NULL"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}function ${name}${(}${)}
{
  ${body}}
"
	
	
      end

      operation 245759 "read"
	public explicit_return_type ""
	nparams 1
	  param in name "$key" explicit_type "mixed"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Read from cache."
      end

      operation 245887 "verify"
	private explicit_return_type "bool"
	nparams 1
	  param in name "$meta" explicit_type "mixed"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Verifies dependencies."
      end

      operation 246015 "lock"
	public explicit_return_type "void"
	nparams 1
	  param in name "$key" explicit_type "mixed"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Prevents item reading and writing. Lock is released by write() or remove()."
      end

      operation 246143 "write"
	public explicit_return_type "void"
	nparams 3
	  param in name "$key" explicit_type "mixed"
	  param in name "$data" explicit_type "mixed"
	  param in name "$dp" explicit_type "array"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Writes item into the cache."
      end

      operation 246271 "remove"
	public explicit_return_type "void"
	nparams 1
	  param in name "$key" explicit_type "mixed"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Removes item from the cache."
      end

      operation 246399 "clean"
	public explicit_return_type "void"
	nparams 1
	  param in name "$conditions" explicit_type "array"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Removes items from the cache by conditions & garbage collector."
      end

      operation 246527 "readMetaAndLock"
	protected explicit_return_type ""
	nparams 2
	  param in name "$file" explicit_type "mixed"
	  param in name "$lock" explicit_type "mixed"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Reads cache data from disk."
      end

      operation 246655 "readData"
	protected explicit_return_type "mixed"
	nparams 1
	  param in name "$meta" explicit_type "mixed"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Reads cache data from disk and closes cache file handle."
      end

      operation 246783 "getCacheFile"
	protected explicit_return_type "string"
	nparams 1
	  param in name "$key" explicit_type "mixed"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Returns file name."
      end

      operation 246911 "delete"
	class_operation private explicit_return_type "void"
	nparams 2
	  param in name "$file" explicit_type "mixed"
	  param in name "$handle" explicit_type "mixed"
	    defaultvalue "NULL"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Deletes and closes file."
      end

      classrelation 141567 // <realization>
	relation 141567 -_-|>
	  a public
	    php "${type}"
	    classrelation_ref 141567 // <realization>
	  b parent class_ref 149759 // IStorage
      end
    end

    class 150143 "DevNullStorage"
      visibility package 
      cpp_decl ""
      java_decl ""
      php_decl "${comment}${final}${visibility}${abstract}class ${name}${extends}${implements} {
${members}}
"
      python_2_2 python_decl ""
      idl_decl ""
      explicit_switch_type ""
      
      comment "Cache dummy storage."
      classrelation 141695 // <generalisation>
	relation 141695 ---|>
	  a public
	    php "${type}"
	    classrelation_ref 141695 // <generalisation>
	  b parent class_ref 142335 // Object
      end

      operation 247039 "read"
	public explicit_return_type ""
	nparams 1
	  param in name "$key" explicit_type "mixed"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Read from cache."
      end

      operation 247167 "lock"
	public explicit_return_type "void"
	nparams 1
	  param in name "$key" explicit_type "mixed"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Prevents item reading and writing. Lock is released by write() or remove()."
      end

      operation 247295 "write"
	public explicit_return_type "void"
	nparams 3
	  param in name "$key" explicit_type "mixed"
	  param in name "$data" explicit_type "mixed"
	  param in name "$dependencies" explicit_type "array"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Writes item into the cache."
      end

      operation 247423 "remove"
	public explicit_return_type "void"
	nparams 1
	  param in name "$key" explicit_type "mixed"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Removes item from the cache."
      end

      operation 247551 "clean"
	public explicit_return_type "void"
	nparams 1
	  param in name "$conditions" explicit_type "array"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Removes items from the cache by conditions & garbage collector."
      end

      classrelation 141823 // <realization>
	relation 141823 -_-|>
	  a public
	    php "${type}"
	    classrelation_ref 141823 // <realization>
	  b parent class_ref 149759 // IStorage
      end
    end

    class 150271 "PhpFileStorage"
      visibility package 
      cpp_decl ""
      java_decl ""
      php_decl "${comment}${final}${visibility}${abstract}class ${name}${extends}${implements} {
${members}}
"
      python_2_2 python_decl ""
      idl_decl ""
      explicit_switch_type ""
      
      comment "PHP files cache storage."
      classrelation 141951 // <generalisation>
	relation 141951 ---|>
	  a public
	    php "${type}"
	    classrelation_ref 141951 // <generalisation>
	  b parent class_ref 150015 // FileStorage
      end

      attribute 179327 "_hint"
	public explicit_type "string"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
      end

      operation 247679 "readData"
	protected explicit_return_type "mixed"
	nparams 1
	  param in name "$meta" explicit_type "mixed"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Reads cache data from disk."
      end

      operation 247807 "getCacheFile"
	protected explicit_return_type "string"
	nparams 1
	  param in name "$key" explicit_type "mixed"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Returns file name."
      end
    end

    class 150399 "IJournal"
      abstract visibility package stereotype "interface"
      cpp_decl ""
      java_decl ""
      php_decl "${comment}${final}${visibility}${abstract}class ${name}${extends}${implements} {
${members}}
"
      python_2_2 python_decl ""
      idl_decl ""
      explicit_switch_type ""
      
      comment "Cache journal provider."
      operation 247935 "write"
	public explicit_return_type "void"
	nparams 2
	  param in name "$key" explicit_type "string"
	  param in name "$dependencies" explicit_type "array"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)};"
	
	
	comment "Writes entry information into the journal."
      end

      operation 248063 "clean"
	public explicit_return_type "array"
	nparams 1
	  param in name "$conditions" explicit_type "array"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)};"
	
	
	comment "Cleans entries from journal."
      end
    end

    class 150527 "FileJournal"
      visibility package 
      cpp_decl ""
      java_decl ""
      php_decl "${comment}${final}${visibility}${abstract}class ${name}${extends}${implements} {
${members}}
"
      python_2_2 python_decl ""
      idl_decl ""
      explicit_switch_type ""
      
      comment "Btree+ based file journal."
      classrelation 142079 // <generalisation>
	relation 142079 ---|>
	  a public
	    php "${type}"
	    classrelation_ref 142079 // <generalisation>
	  b parent class_ref 142335 // Object
      end

      attribute 179455 "FILE"
	class_attribute const_attribute public explicit_type "string"
	init_value "'btfj.dat'"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
	comment "Filename with journal"
      end

      attribute 179583 "FILE_MAGIC"
	class_attribute const_attribute public explicit_type "int"
	init_value "0x6274666A"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
	comment "4 bytes file header magic (btfj)"
      end

      attribute 179711 "INDEX_MAGIC"
	class_attribute const_attribute public explicit_type "int"
	init_value "0x696E6465"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
	comment "4 bytes index node magic (inde)"
      end

      attribute 179839 "DATA_MAGIC"
	class_attribute const_attribute public explicit_type "int"
	init_value "0x64617461"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
	comment "4 bytes data node magic (data)"
      end

      attribute 179967 "NODE_SIZE"
	class_attribute const_attribute public explicit_type "int"
	init_value "4096"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
	comment "Node size in bytes"
      end

      attribute 180095 "BITROT"
	class_attribute const_attribute public explicit_type "int"
	init_value "12"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
	comment "Bit rotation for saving data into nodes. BITROT = log2(NODE_SIZE)"
      end

      attribute 180223 "HEADER_SIZE"
	class_attribute const_attribute public explicit_type "int"
	init_value "4096"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
	comment "Header size in bytes"
      end

      attribute 180351 "INT32_SIZE"
	class_attribute const_attribute public explicit_type "int"
	init_value "4"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
	comment "Size of 32 bit integer in bytes. INT32_SIZE = 32 / 8 :-)"
      end

      attribute 180479 "INFO"
	class_attribute const_attribute public explicit_type "string"
	init_value "'i'"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
      end

      attribute 180607 "TYPE"
	public explicit_type "string"
	init_value "'t'"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
      end

      attribute 180735 "IS_LEAF"
	public explicit_type "string"
	init_value "'il'"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
      end

      attribute 180863 "PREV_NODE"
	public explicit_type "string"
	init_value "'p'"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
      end

      attribute 180991 "END"
	public explicit_type "string"
	init_value "'e'"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
      end

      attribute 181119 "MAX"
	public explicit_type "string"
	init_value "'m'"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
      end

      attribute 181247 "INDEX_DATA"
	public explicit_type "string"
	init_value "'id'"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
      end

      attribute 181375 "LAST_INDEX"
	public explicit_type "string"
	init_value "'l'"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
      end

      attribute 181503 "TAGS"
	class_attribute const_attribute public explicit_type "string"
	init_value "'t'"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
      end

      attribute 181631 "PRIORITY"
	public explicit_type "string"
	init_value "'p'"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
      end

      attribute 181759 "ENTRIES"
	public explicit_type "string"
	init_value "'e'"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
      end

      attribute 181887 "DATA"
	class_attribute const_attribute public explicit_type "string"
	init_value "'d'"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
      end

      attribute 182015 "KEY"
	public explicit_type "string"
	init_value "'k'"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
      end

      attribute 182143 "DELETED"
	public explicit_type "string"
	init_value "'d'"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
      end

      attribute 182271 "_debug"
	class_attribute public explicit_type "mixed"
	init_value "FALSE"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
	comment "Debug mode, only for testing purposes"
      end

      attribute 182399 "_file"
	private explicit_type "string"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
      end

      attribute 182527 "_handle"
	private explicit_type "resource"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
      end

      attribute 182655 "_lastNode"
	private explicit_type "int"
	init_value "2"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
      end

      attribute 182783 "_processIdentifier"
	private explicit_type "string"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
      end

      attribute 182911 "_nodeCache"
	private explicit_type "array"
	init_value "array()"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
      end

      attribute 183039 "_nodeChanged"
	private explicit_type "array"
	init_value "array()"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
      end

      attribute 183167 "_toCommit"
	private explicit_type "array"
	init_value "array()"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
      end

      attribute 183295 "_deletedLinks"
	private explicit_type "array"
	init_value "array()"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
      end

      attribute 183423 "_dataNodeFreeSpace"
	private explicit_type "array"
	init_value "array()"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
      end

      attribute 183551 "_startNode"
	class_attribute private explicit_type "array"
	init_value "array(selfTAGS=>0,selfPRIORITY=>1,selfENTRIES=>2,selfDATA=>3,)"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
      end

      operation 248191 "__construct"
	public explicit_return_type "void"
	nparams 1
	  param in name "$dir" explicit_type "mixed"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}function ${name}${(}${)}
{
  ${body}}
"
	
	
      end

      operation 248319 "__destruct"
	public explicit_return_type "void"
	nparams 0
	
	
	php_def "  ${comment}${final}${visibility}${abstract}function ${name}${(}${)}
{
  ${body}}
"
	
	
      end

      operation 248447 "write"
	public explicit_return_type "void"
	nparams 2
	  param in name "$key" explicit_type "mixed"
	  param in name "$dependencies" explicit_type "array"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Writes entry information into the journal."
      end

      operation 248575 "clean"
	public explicit_return_type "array"
	nparams 1
	  param in name "$conditions" explicit_type "array"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Cleans entries from journal."
      end

      operation 248703 "cleanTags"
	private explicit_return_type "array"
	nparams 2
	  param in name "$tags" explicit_type "array"
	  param inout name "$toDelete" explicit_type "array"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Cleans entries from journal by tags."
      end

      operation 248831 "cleanPriority"
	private explicit_return_type "array"
	nparams 2
	  param in name "$priority" explicit_type "mixed"
	  param inout name "$toDelete" explicit_type "array"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Cleans entries from journal by priority."
      end

      operation 248959 "cleanLinks"
	private explicit_return_type "array"
	nparams 2
	  param in name "$data" explicit_type "array"
	  param inout name "$toDelete" explicit_type "array"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Cleans links from $data."
      end

      operation 249087 "cleanFromIndex"
	private explicit_return_type "void"
	nparams 1
	  param in name "$toDeleteFromIndex" explicit_type "array"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Remove links to deleted keys from index."
      end

      operation 249215 "mergeIndexData"
	private explicit_return_type "array"
	nparams 1
	  param in name "$data" explicit_type "array"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Merge data with index data in other nodes."
      end

      operation 249343 "cleanIndexData"
	private explicit_return_type "void"
	nparams 3
	  param in name "$nextNodeId" explicit_type "mixed"
	  param in name "$links" explicit_type "array"
	  param inout name "$masterNodeLink" explicit_type "mixed"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Cleans links from other nodes."
      end

      operation 249471 "getNode"
	private explicit_return_type "array"
	nparams 1
	  param in name "$id" explicit_type "mixed"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Get node from journal."
      end

      operation 249599 "saveNode"
	private explicit_return_type "void"
	nparams 2
	  param in name "$id" explicit_type "mixed"
	  param in name "$node" explicit_type "array"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Save node to cache."
      end

      operation 249727 "commit"
	private explicit_return_type "void"
	nparams 0
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Commit all changed nodes from cache to journal file."
      end

      operation 249855 "prepareNode"
	private explicit_return_type "bool"
	nparams 2
	  param in name "$id" explicit_type "mixed"
	  param in name "$node" explicit_type "mixed"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Prepare node to journal file structure."
      end

      operation 249983 "commitNode"
	private explicit_return_type "void"
	nparams 2
	  param in name "$id" explicit_type "mixed"
	  param in name "$str" explicit_type "mixed"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Commit node string to journal file."
      end

      operation 250111 "findIndexNode"
	private explicit_return_type "array"
	nparams 4
	  param in name "$type" explicit_type "mixed"
	  param in name "$search" explicit_type "mixed"
	  param in name "$childId" explicit_type "mixed"
	    defaultvalue "NULL"
	  param in name "$prevId" explicit_type "mixed"
	    defaultvalue "NULL"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Find right node in B+tree. ."
      end

      operation 250239 "findFreeNode"
	private explicit_return_type ""
	nparams 1
	  param in name "$count" explicit_type "int"
	    defaultvalue "1"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Find complete free node."
      end

      operation 250367 "findFreeDataNode"
	private explicit_return_type "integer"
	nparams 1
	  param in name "$size" explicit_type "mixed"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Find free data node that has $size bytes of free space."
      end

      operation 250495 "bisectNode"
	private explicit_return_type "void"
	nparams 2
	  param in name "$id" explicit_type "mixed"
	  param in name "$node" explicit_type "array"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Bisect node or when has only one key, move part to data node."
      end

      operation 250623 "headerCommit"
	private explicit_return_type "void"
	nparams 0
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Commit header to journal file."
      end

      operation 250751 "deleteNode"
	private explicit_return_type "void"
	nparams 1
	  param in name "$id" explicit_type "mixed"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Remove node from journal file."
      end

      operation 250879 "deleteAll"
	private explicit_return_type "void"
	nparams 0
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Complete delete all nodes from file."
      end

      operation 251007 "lock"
	private explicit_return_type "void"
	nparams 0
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Lock file for writing and reading and delete node cache when file has changed."
      end

      operation 251135 "prepare"
	private explicit_return_type "void"
	nparams 0
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Open btfj.dat file (or create it if not exists) and load metainformation"
      end

      operation 251263 "unlock"
	private explicit_return_type "void"
	nparams 0
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Unlock file and save last modified time."
      end

      operation 251391 "findNextFreeKey"
	private explicit_return_type "int"
	nparams 2
	  param in name "$nodeId" explicit_type "int"
	  param inout name "$nodeData" explicit_type "array"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
      end

      operation 251519 "arrayAppend"
	private explicit_return_type "void"
	nparams 2
	  param inout name "$array" explicit_type "array"
	  param in name "$append" explicit_type "array"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Append $append to $array.
This function is much faster then $array = array_merge($array, $append)"
      end

      operation 251647 "arrayAppendKeys"
	private explicit_return_type "void"
	nparams 2
	  param inout name "$array" explicit_type "array"
	  param in name "$append" explicit_type "array"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Append $append to $array with preserve keys.
This function is much faster then $array = $array + $append"
      end

      classrelation 142207 // <realization>
	relation 142207 -_-|>
	  a public
	    php "${type}"
	    classrelation_ref 142207 // <realization>
	  b parent class_ref 150399 // IJournal
      end
    end

    class 150655 "MemoryStorage"
      visibility package 
      cpp_decl ""
      java_decl ""
      php_decl "${comment}${final}${visibility}${abstract}class ${name}${extends}${implements} {
${members}}
"
      python_2_2 python_decl ""
      idl_decl ""
      explicit_switch_type ""
      
      comment "Memory cache storage."
      classrelation 142335 // <generalisation>
	relation 142335 ---|>
	  a public
	    php "${type}"
	    classrelation_ref 142335 // <generalisation>
	  b parent class_ref 142335 // Object
      end

      attribute 183679 "_data"
	private explicit_type "array"
	init_value "array()"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
      end

      operation 251775 "read"
	public explicit_return_type ""
	nparams 1
	  param in name "$key" explicit_type "mixed"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Read from cache."
      end

      operation 251903 "lock"
	public explicit_return_type "void"
	nparams 1
	  param in name "$key" explicit_type "mixed"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Prevents item reading and writing. Lock is released by write() or remove()."
      end

      operation 252031 "write"
	public explicit_return_type "void"
	nparams 3
	  param in name "$key" explicit_type "mixed"
	  param in name "$data" explicit_type "mixed"
	  param in name "$dependencies" explicit_type "array"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Writes item into the cache."
      end

      operation 252159 "remove"
	public explicit_return_type "void"
	nparams 1
	  param in name "$key" explicit_type "mixed"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Removes item from the cache."
      end

      operation 252287 "clean"
	public explicit_return_type "void"
	nparams 1
	  param in name "$conditions" explicit_type "array"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Removes items from the cache by conditions & garbage collector."
      end

      classrelation 142463 // <realization>
	relation 142463 -_-|>
	  a public
	    php "${type}"
	    classrelation_ref 142463 // <realization>
	  b parent class_ref 149759 // IStorage
      end
    end

    class 150783 "MemcachedStorage"
      visibility package 
      cpp_decl ""
      java_decl ""
      php_decl "${comment}${final}${visibility}${abstract}class ${name}${extends}${implements} {
${members}}
"
      python_2_2 python_decl ""
      idl_decl ""
      explicit_switch_type ""
      
      comment "Memcached storage."
      classrelation 142591 // <generalisation>
	relation 142591 ---|>
	  a public
	    php "${type}"
	    classrelation_ref 142591 // <generalisation>
	  b parent class_ref 142335 // Object
      end

      attribute 183807 "META_DATA"
	public explicit_type "string"
	init_value "'data'"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
      end

      attribute 183935 "META_DELTA"
	public explicit_type "string"
	init_value "'delta'"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
      end

      attribute 184063 "_memcache"
	private explicit_type ""
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
      end

      attribute 184191 "_prefix"
	private explicit_type "string"
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
      end

      attribute 184319 "_journal"
	private type class_ref 150399 // IJournal
	cpp_decl ""
	java_decl ""
	php_decl "  ${comment}${visibility}${const}${static}${var}${name}${value};
"
	python_decl ""
	idl_decl ""
      end

      operation 252415 "isAvailable"
	class_operation public explicit_return_type "bool"
	nparams 0
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Checks if Memcached extension is available."
      end

      operation 252543 "__construct"
	public explicit_return_type "void"
	nparams 4
	  param in name "$host" explicit_type "string"
	    defaultvalue "'localhost'"
	  param in name "$port" explicit_type "int"
	    defaultvalue "11211"
	  param in name "$prefix" explicit_type "string"
	    defaultvalue "''"
	  param in name "$journal" type class_ref 150399 // IJournal
	    defaultvalue "NULL"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}function ${name}${(}${)}
{
  ${body}}
"
	
	
      end

      operation 252671 "addServer"
	public explicit_return_type "void"
	nparams 3
	  param in name "$host" explicit_type "string"
	    defaultvalue "'localhost'"
	  param in name "$port" explicit_type "int"
	    defaultvalue "11211"
	  param in name "$timeout" explicit_type "int"
	    defaultvalue "1"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
      end

      operation 252799 "getConnection"
	public explicit_return_type ""
	nparams 0
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
      end

      operation 252927 "read"
	public explicit_return_type ""
	nparams 1
	  param in name "$key" explicit_type "mixed"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Read from cache."
      end

      operation 253055 "lock"
	public explicit_return_type "void"
	nparams 1
	  param in name "$key" explicit_type "mixed"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Prevents item reading and writing. Lock is released by write() or remove()."
      end

      operation 253183 "write"
	public explicit_return_type "void"
	nparams 3
	  param in name "$key" explicit_type "mixed"
	  param in name "$data" explicit_type "mixed"
	  param in name "$dp" explicit_type "array"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Writes item into the cache."
      end

      operation 253311 "remove"
	public explicit_return_type "void"
	nparams 1
	  param in name "$key" explicit_type "mixed"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Removes item from the cache."
      end

      operation 253439 "clean"
	public explicit_return_type "void"
	nparams 1
	  param in name "$conditions" explicit_type "array"
	
	
	php_def "  ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
{
  ${body}}
"
	
	
	comment "Removes items from the cache by conditions & garbage collector."
      end

      classrelation 142719 // <realization>
	relation 142719 -_-|>
	  a public
	    php "${type}"
	    classrelation_ref 142719 // <realization>
	  b parent class_ref 149759 // IStorage
      end
    end
  end
end
