Asmir Mustafic před 11 roky
rodič
revize
ae149cab9b

+ 61 - 0
tests/JMS/Serializer/Tests/Fixtures/AuthorReadOnlyPerClass.php

@@ -0,0 +1,61 @@
+<?php
+
+/*
+ * Copyright 2013 Johannes M. Schmitt <schmittjoh@gmail.com>
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+namespace JMS\Serializer\Tests\Fixtures;
+
+use JMS\Serializer\Annotation\SerializedName;
+use JMS\Serializer\Annotation\Type;
+use JMS\Serializer\Annotation\XmlRoot;
+use JMS\Serializer\Annotation\ReadOnly;
+use JMS\Serializer\Annotation\Accessor;
+
+/**
+ * @XmlRoot("author")
+ * @ReadOnly
+ */
+class AuthorReadOnlyPerClass
+{
+    /**
+     * @ReadOnly
+     * @SerializedName("id")
+     */
+    private $id;
+
+    /**
+     * @Type("string")
+     * @SerializedName("full_name")
+     * @Accessor("getName")
+     */
+    private $name;
+
+    public function __construct($id, $name)
+    {
+        $this->id = $id;
+        $this->name = $name;
+    }
+
+    public function getId()
+    {
+        return $this->id;
+    }
+
+    public function getName()
+    {
+        return $this->name;
+    }
+}

+ 7 - 0
tests/JMS/Serializer/Tests/Metadata/Driver/php/AuthorReadOnlyPerClass.php

@@ -0,0 +1,7 @@
+<?php
+
+use JMS\Serializer\Metadata\ClassMetadata;
+
+$metadata = new ClassMetadata('JMS\Serializer\Tests\Fixtures\AuthorReadOnlyPerClass');
+
+return $metadata;

+ 7 - 0
tests/JMS/Serializer/Tests/Metadata/Driver/xml/AuthorReadOnlyPerClass.xml

@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<serializer>
+    <class name="JMS\Serializer\Tests\Fixtures\AuthorReadOnlyPerClass" xml-root-name="author" read-only="true">
+        <property name="id" read-only="true"/>
+        <property name="name" serialized-name="full_name" access-type="public_method" accessor-getter="getName" />
+    </class>
+</serializer>

+ 11 - 0
tests/JMS/Serializer/Tests/Metadata/Driver/yml/AuthorReadOnlyPerClass.yml

@@ -0,0 +1,11 @@
+JMS\Serializer\Tests\Fixtures\AuthorReadOnlyPerClass:
+    xml_root_name: author
+    read_only: true
+    properties:
+        id:
+            
+        name:
+            serialized_name:  full_name
+            access_type:      public_method
+            accessor_getter:  getName
+            read_only:        true