copyWith method

RequestMetaObject copyWith({
  1. ClientCapabilities? clientCapabilities,
  2. Implementation? clientInfo,
  3. LoggingLevel? logLevel,
  4. String? protocolVersion,
  5. Object? progressToken,
})

A copy with the given properties replaced; everything else, unknown keys included, is kept.

Implementation

RequestMetaObject copyWith({
  ClientCapabilities? clientCapabilities,
  Implementation? clientInfo,
  LoggingLevel? logLevel,
  String? protocolVersion,
  Object? progressToken,
}) =>
    RequestMetaObject.fromJson({
      ...toJson(),
      if (clientCapabilities != null) 'io.modelcontextprotocol/clientCapabilities': $encode(clientCapabilities),
      if (clientInfo != null) 'io.modelcontextprotocol/clientInfo': $encode(clientInfo),
      if (logLevel != null) 'io.modelcontextprotocol/logLevel': $encode(logLevel),
      if (protocolVersion != null) 'io.modelcontextprotocol/protocolVersion': $encode(protocolVersion),
      if (progressToken != null) 'progressToken': $encode(progressToken),
    });