001/*
002 * Licensed to the Apache Software Foundation (ASF) under one or more
003 * contributor license agreements.  See the NOTICE file distributed with
004 * this work for additional information regarding copyright ownership.
005 * The ASF licenses this file to You under the Apache License, Version 2.0
006 * (the "License"); you may not use this file except in compliance with
007 * the License.  You may obtain a copy of the License at
008 *
009 *      http://www.apache.org/licenses/LICENSE-2.0
010 *
011 * Unless required by applicable law or agreed to in writing, software
012 * distributed under the License is distributed on an "AS IS" BASIS,
013 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
014 * See the License for the specific language governing permissions and
015 * limitations under the License.
016 */
017package org.apache.juneau.bean.mcp.v20250618;
018
019import org.apache.juneau.marshall.*;
020
021/**
022 * MCP {@code image} content block (base64 data).
023 */
024@Marshalled(typeName = "image")
025public class ImageContent implements Content {
026
027   private String data;
028   private String mimeType;
029
030   /**
031    * Base64-encoded image bytes.
032    *
033    * @return The data, or {@code null} if not set.
034    */
035   public String getData() {
036      return data;
037   }
038
039   /**
040    * Sets the base64 payload.
041    *
042    * @param value The new value.  Can be <jk>null</jk> to unset the property.
043    * @return This object (for method chaining).
044    */
045   public ImageContent setData(String value) {
046      data = value;
047      return this;
048   }
049
050   /**
051    * Image MIME type (for example {@code image/png}).
052    *
053    * @return The MIME type, or {@code null} if not set.
054    */
055   public String getMimeType() {
056      return mimeType;
057   }
058
059   /**
060    * Sets the MIME type.
061    *
062    * @param value The new value.  Can be <jk>null</jk> to unset the property.
063    * @return This object (for method chaining).
064    */
065   public ImageContent setMimeType(String value) {
066      mimeType = value;
067      return this;
068   }
069}