001/*
002 * ============================================================================
003 * Copyright © 2002-2020 by Thomas Thrien.
004 * All Rights Reserved.
005 * ============================================================================
006 * Licensed to the public under the agreements of the GNU Lesser General Public
007 * License, version 3.0 (the "License"). You may obtain a copy of the License at
008 *
009 *      http://www.gnu.org/licenses/lgpl.html
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, WITHOUT
013 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
014 * License for the specific language governing permissions and limitations
015 * under the License.
016 */
017
018package org.tquadrat.foundation.svg.internal;
019
020import static org.apiguardian.api.API.Status.INTERNAL;
021import static org.tquadrat.foundation.svg.SVGUtils.SVGATTRIBUTE_Position;
022
023import org.apiguardian.api.API;
024import org.tquadrat.foundation.annotation.ClassVersion;
025import org.tquadrat.foundation.svg.SVGPositionedMarker;
026import org.tquadrat.foundation.svg.type.SVGNumber;
027
028/**
029 *  The implementation of the interface
030 *  {@link SVGPositionedMarker}
031 *  for an SVG {@code <marker>} element that is used as a <i>positioned</i>
032 *  marker.
033 *
034 *  @extauthor Thomas Thrien - thomas.thrien@tquadrat.org
035 *  @version $Id: SVGPositionedMarkerImpl.java 980 2022-01-06 15:29:19Z tquadrat $
036 *  @since 0.0.5
037 *
038 *  @UMLGraph.link
039 */
040@ClassVersion( sourceVersion = "$Id: SVGPositionedMarkerImpl.java 980 2022-01-06 15:29:19Z tquadrat $" )
041@API( status = INTERNAL, since = "0.0.5" )
042public final class SVGPositionedMarkerImpl extends SVGMarkerImpl implements SVGPositionedMarker
043{
044        /*--------------*\
045    ====** Constructors **=====================================================
046        \*--------------*/
047    /**
048     *  Creates a new {@code SVGPositionedMarkerImpl} instance.
049     */
050    @SuppressWarnings( "RedundantNoArgConstructor" )
051    public SVGPositionedMarkerImpl() { super(); }
052
053        /*---------*\
054    ====** Methods **==========================================================
055        \*---------*/
056    /**
057     *  {@inheritDoc}
058     */
059    @SuppressWarnings( "UseOfConcreteClass" )
060    @Override
061    public final void setPosition( final SVGNumber value )
062    {
063        setAttribute( SVGATTRIBUTE_Position, value );
064    }   //  setPosition()
065}
066//  class SVGPositionedMarkerImpl
067
068/*
069 *  End of File
070 */