def get_calendar_formatting_session_for_type(self, calendar_type=None, calendar_format_type=None, time_type=None, time_format_type=None):
Gets an ``OsidSession`` associated with the calendar formatting service and the given calendar and time types.

        arg:    calendar_type (osid.type.Type): the type of the calendar
        arg:    calendar_format_type (osid.type.Type): the type of the
                calendar format
        arg:    time_type (osid.type.Type): the type of the time system
        arg:    time_format_type (osid.type.Type): the type of the time
                format
        return: (osid.locale.CalendarFormattingSession) - a
                ``CalendarFormattingSession``
        raise:  NullArgument - ``calendar_type, calendar_format_type,
                time_type`` or ``time_format_type`` is ``null``
        raise:  OperationFailed - unable to complete request
        raise:  Unimplemented - ``supports_calendar_formatting()`` or
                ``supports_visible_federation()`` is ``false``
        raise:  Unsupported -
                ``supports_calendar_types_for_formattinge(calendar_type,
                calendar_format_type, time_type, time_format_type)`` is
                ``false``
        *compliance: optional -- This method must be implemented if
        ``supports_calendar_formatting()`` and
        ``supports_visible_federation()`` are ``true``.*