cosfiletransfer_directory_impl.erl

来自「OTP是开放电信平台的简称」· ERL 代码 · 共 451 行 · 第 1/2 页

ERL
451
字号
%% Arguments  : Name  - string()%%              Value - #any{}%%              Mode  - normal | read_only | fixed_normal | fixed_readonly%% Returns    : See cosProperty application.%% Description: %%----------------------------------------------------------------------define_property_with_mode(_OE_This, State, Name, Value, Mode) ->    {reply, 'CosPropertyService_PropertySetDef':     define_property_with_mode(?get_PropertyRef(State), Name, Value, Mode), State}.%%---------------------------------------------------------------------%%% Function   : define_properties_with_modes%% Arguments  : PropertyDefs - list of #'CosPropertyService_PropertyDef'{}%% Returns    : See cosProperty application.%% Description: %%----------------------------------------------------------------------define_properties_with_modes(_OE_This, State, PropertyDefs) ->    {reply, 'CosPropertyService_PropertySetDef':     define_properties_with_modes(?get_PropertyRef(State), PropertyDefs), State}.%%---------------------------------------------------------------------%%% Function   : get_property_mode%% Arguments  : Name - string()%% Returns    : See cosProperty application.%% Description: %%----------------------------------------------------------------------get_property_mode(_OE_This, State, Name) ->    {reply, 'CosPropertyService_PropertySetDef':     get_property_mode(?get_PropertyRef(State), Name), State}.%%---------------------------------------------------------------------%%% Function   : get_property_modes%% Arguments  : Names - a list of Name (i.e. string()'s).%% Returns    : See cosProperty application.%% Description: %%----------------------------------------------------------------------get_property_modes(_OE_This, State, Names) ->    {reply, 'CosPropertyService_PropertySetDef':	get_property_modes(?get_PropertyRef(State), Names), State}.%%---------------------------------------------------------------------%%% Function   : set_property_mode%% Arguments  : Name - string()%%              Mode - normal | read_only | fixed_normal | fixed_readonly%% Returns    : See cosProperty application.%% Description: %%----------------------------------------------------------------------set_property_mode(_OE_This, State, Name, Mode) ->    {reply, 'CosPropertyService_PropertySetDef':     set_property_mode(?get_PropertyRef(State), Name, Mode), State}.%%---------------------------------------------------------------------%%% Function   : set_property_modes%% Arguments  : Modes - a list of #'CosPropertyService_PropertyModes'{}%% Returns    : See cosProperty application.%% Description: %%----------------------------------------------------------------------set_property_modes(_OE_This, State, PropertyModes) ->    {reply, 'CosPropertyService_PropertySetDef':     set_property_modes(?get_PropertyRef(State), PropertyModes), State}.%%======================================================================%% CosPropertyService::PropertySet%%======================================================================%%---------------------------------------------------------------------%%% Function   : define_property%% Arguments  : Name  - string()%%              Value - #any{}%% Returns    : See cosProperty application.%% Description: %%----------------------------------------------------------------------define_property(_OE_This, State, Name, Value) ->    {reply, 'CosPropertyService_PropertySet':     define_property(?get_PropertyRef(State), Name, Value), State}.%%---------------------------------------------------------------------%%% Function   : define_properties%% Arguments  : Properties - a list of #'CosPropertyService_Property'{}%% Returns    : See cosProperty application.%% Description: %%----------------------------------------------------------------------define_properties(_OE_This, State, Properties) ->    {reply, 'CosPropertyService_PropertySet':     define_properties(?get_PropertyRef(State), Properties), State}.%%---------------------------------------------------------------------%%% Function   : get_number_of_properties%% Arguments  : -%% Returns    : See cosProperty application.%% Description: %%----------------------------------------------------------------------get_number_of_properties(_OE_This, State) ->    {reply, 'CosPropertyService_PropertySet':     get_number_of_properties(?get_PropertyRef(State)), State}.%%---------------------------------------------------------------------%%% Function   : get_all_property_names%% Arguments  : Max - ulong()%% Returns    : See cosProperty application.%% Description: %%----------------------------------------------------------------------get_all_property_names(_OE_This, State, Max) ->    {reply, 'CosPropertyService_PropertySet':     get_all_property_names(?get_PropertyRef(State), Max), State}.%%---------------------------------------------------------------------%%% Function   : get_property_value%% Arguments  : Name - string()%% Returns    : See cosProperty application.%% Description: %%----------------------------------------------------------------------get_property_value(_OE_This, State, "num_children") ->    Count = 'CosFileTransfer_FileTransferSession':	oe_orber_count_children(?get_AssocSession(State), ?get_CompleteName(State)),    {reply, #any{typecode=tk_long, value=Count}, State};get_property_value(_OE_This, State, Name) ->    {reply, 'CosPropertyService_PropertySet':     get_property_value(?get_PropertyRef(State), Name), State}.%%---------------------------------------------------------------------%%% Function   : get_properties%% Arguments  : Names - a list of Name (i.e. string()'s)%% Returns    : See cosProperty application.%% Description: %%----------------------------------------------------------------------get_properties(_OE_This, State, Names) ->    {Bool, Props} = 	'CosPropertyService_PropertySet':get_properties(?get_PropertyRef(State), 							Names),    NewProps = change_property(Props, [], State),    {reply, {Bool, NewProps}, State}.change_property([], Acc, _State) ->    Acc;change_property([H|T], Acc, State) ->    NewAcc = 	case H of	    #'CosPropertyService_Property'{property_name = "num_children"} ->		Count = 'CosFileTransfer_FileTransferSession':		    oe_orber_count_children(?get_AssocSession(State), 					    ?get_CompleteName(State)),		[H#'CosPropertyService_Property'		 {property_value = #any{typecode=tk_long, value=Count}}|Acc];	    _ ->		[H|Acc]    end,    change_property(T, NewAcc, State).%%---------------------------------------------------------------------%%% Function   : get_all_properties%% Arguments  : Max - ulong()%% Returns    : See cosProperty application.%% Description: %%----------------------------------------------------------------------get_all_properties(_OE_This, State, 0) ->    %% WARNING if we start supporting more than 10 Properties the next line must    %% be updated!    {ok, Props, _Iterator} = 	'CosPropertyService_PropertySet':get_all_properties(?get_PropertyRef(State), 							    10),    NewProps = change_property(Props, [], State),    %% WARNING if the cosProperty:start_PropertiesIterator/1 is updated    %% it must be done hear as well.    {reply, {ok, [], cosProperty:start_PropertiesIterator(NewProps)}, State};get_all_properties(_OE_This, State, Max) ->    {ok, Props, Iterator} = 	'CosPropertyService_PropertySet':get_all_properties(?get_PropertyRef(State), 							    Max),    NewProps = change_property(Props, [], State),    {reply, {ok, NewProps, Iterator}, State}.%%---------------------------------------------------------------------%%% Function   : delete_property%% Arguments  : Name - string()%% Returns    : See cosProperty application.%% Description: %%----------------------------------------------------------------------delete_property(_OE_This, State, Name) ->    {reply, 'CosPropertyService_PropertySet':     delete_property(?get_PropertyRef(State), Name), State}.%%---------------------------------------------------------------------%%% Function   : delete_properties%% Arguments  : Names - a list of Name (i.e. string()'s)%% Returns    : See cosProperty application.%% Description: %%----------------------------------------------------------------------delete_properties(_OE_This, State, Names) ->    {reply, 'CosPropertyService_PropertySet':     delete_properties(?get_PropertyRef(State), Names), State}.%%---------------------------------------------------------------------%%% Function   : delete_all_properties%% Arguments  : -%% Returns    : See cosProperty application.%% Description: %%----------------------------------------------------------------------delete_all_properties(_OE_This, State) ->    {reply, 'CosPropertyService_PropertySet':     delete_all_properties(?get_PropertyRef(State)), State}.%%---------------------------------------------------------------------%%% Function   : is_property_defined%% Arguments  : Name - string()%% Returns    : See cosProperty application.%% Description: %%----------------------------------------------------------------------is_property_defined(_OE_This, State, Name) ->    {reply, 'CosPropertyService_PropertySet':     is_property_defined(?get_PropertyRef(State), Name), State}.%%======================================================================%% Internal functions%%======================================================================%%======================================================================%% END OF MODULE%%======================================================================

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?