src/Orleans.Core/Manifest/GrainVersionManifest.cs
/// <summary>
/// Gets a collection of all known versions for a grain interface.
/// </summary>
/// <param name="interfaceType">The grain interface type name.</param>
/// <returns>All known versions for the specified grain interface.</returns>
Gets a collection of all known versions for a grain interface.
Gets a collection of all known versions for a grain interface .
public (MajorMinorVersion Version, ushort[] Result) GetAvailableVersions(GrainInterfaceType interfaceType)
        {
            var cache = GetCache();
            if (cache.AvailableVersions.TryGetValue(interfaceType, out var result))
            {
                return (cache.Version, result);
            }
            if (_genericInterfaceMapping.TryGetValue(interfaceType, out var genericInterfaceId))
            {
                return GetAvailableVersions(genericInterfaceId);
            }
            if (GenericGrainInterfaceType.TryParse(interfaceType, out var generic) && generic.IsConstructed)
            {
                var genericId = _genericInterfaceMapping[interfaceType] = generic.GetGenericGrainType().Value;
                return GetAvailableVersions(genericId);
            }
            return (cache.Version, Array.Empty<ushort>());
        }
public ( MajorMinorVersion Version , ushort [ ] Result ) GetAvailableVersions ( GrainInterfaceType interfaceType ) { var cache = GetCache ( ) ; if ( cache . AvailableVersions . TryGetValue ( interfaceType , out var result ) ) { return ( cache . Version , result ) ; } if ( _genericInterfaceMapping . TryGetValue ( interfaceType , out var genericInterfaceId ) ) { return GetAvailableVersions ( genericInterfaceId ) ; } if ( GenericGrainInterfaceType . TryParse ( interfaceType , out var generic ) && generic . IsConstructed ) { var genericId = _genericInterfaceMapping [ interfaceType ] = generic . GetGenericGrainType ( ) . Value ; return GetAvailableVersions ( genericId ) ; } return ( cache . Version , Array . Empty < ushort > ( ) ) ; }
Gets a collection of all known versions for a grain interface.
Gets a collection of all known versions for a grain interface .
// No versions available.
All known versions for the specified grain interface.
All known versions for the specified grain interface .
interfaceType
GrainInterfaceType
The grain interface type name.
The grain interface type name .