LlDataSizeKeyValue/ja: Difference between revisions

From Second Life Wiki
Jump to navigation Jump to search
Misaki Vanilla (talk | contribs)
Created page with "Category:Experience Tools {{LSL_Function |inject-2= {{LSL Function/KeyValue|d2_type=integer|d2_name=used|d2_desc=Number of bytes used|d3_type=integer|d3_name=quota|d3_desc..."
 
Misaki Vanilla (talk | contribs)
mNo edit summary
Line 1: Line 1:
[[Category:Experience Tools]]
[[Category:Experience Tools/ja]]
{{LSL_Function
{{LSL_Function
|inject-2=
|inject-2=
Line 10: Line 10:
|return_text=that can be used to identify the corresponding [[dataserver]] event to determine if this command succeeded or failed and the results.
|return_text=that can be used to identify the corresponding [[dataserver]] event to determine if this command succeeded or failed and the results.
|also_functions=
|also_functions=
*[[llGetExperienceErrorMessage]]
*[[llGetExperienceErrorMessage/ja]]
*[[llCreateKeyValue]]
*[[llCreateKeyValue/ja]]
*[[llReadKeyValue]]
*[[llReadKeyValue/ja]]
*[[llUpdateKeyValue]]
*[[llUpdateKeyValue/ja]]
*[[llDeleteKeyValue]]
*[[llDeleteKeyValue/ja]]
*[[llDataSizeKeyValue]]
*[[llDataSizeKeyValue/ja]]
*[[llKeyCountKeyValue]]
*[[llKeyCountKeyValue/ja]]
*[[llKeysKeyValue]]
*[[llKeysKeyValue/ja]]
|examples=<source lang="lsl2">key trans;
|examples=<source lang="lsl2">key trans;


Line 48: Line 48:
}
}
</source>
</source>
|cat1=Experience
|cat1=Experience/ja
|cat2=Experience/Data
|cat2=Experience/Data/ja
|cat3=Dataserver
|cat3=Dataserver/ja
}}
}}

Revision as of 03:53, 8 October 2023

Summary

Function: key llDataSizeKeyValue( );

Start an asynchronous transaction to request the used and total amount of data allocated for the Experience.
Returns a handle (a key) that can be used to identify the corresponding dataserver event to determine if this command succeeded or failed and the results.

Specification

  • Maximum memory storage: 128 MiB

Dataserver

The dataserver callback parameters are:

String Components
• integer success A boolean specifying if the transaction succeeded (1) or not (0).
• integer error An XP_ERROR_* flag that describes why the operation failed.
• integer used Number of bytes used
• integer quota Number of bytes the key-store can utilize

Caveats

  • If you recompile a script that was previously associated with an Experience but do so with a client that lacks the ability to compile scripts into an experience the script will lose the associated Experience.

Examples

key trans;

default
{
    state_entry()
    {
        trans = llDataSizeKeyValue();
    }
 
    dataserver( key _t, string _value )
    {
        if ( _t == trans )
        {
            // our llDataSizeKeyValue transaction is done
            list result = llCSV2List( _value );
            if ( llList2Integer( result, 0 ) == 1 )
            {
                // data size retrieved
                llSay( 0, "Space in use: " + llList2String( result, 1 ) );
                llSay( 0, "Total space:  " + llList2String( result, 2 ) );
            }
            else
            {
                // data size check failed
                llSay( 0, "Key-value failed to check size: " + llList2String( result, 1 ) );
            }
        }
    } 
}

Notes

Compiling

For a script to be associated with an Experience...

  • It must be compiled with a client that is Experience aware,
  • The "Use Experience" checkbox must be checked,
  • And one of the users Experience keys selected.
重要 Not all TPVs have this functionality.

Deep Notes

Signature

function key llDataSizeKeyValue();