1 <?php
2 /**
3 * Copyright 2015 Klarna AB
4 *
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 *
17 * File containing the Klarna_Checkout_Resource interface
18 *
19 * PHP version 5.3
20 *
21 * @category Payment
22 * @package Klarna_Checkout
23 * @author Klarna <support@klarna.com>
24 * @copyright 2015 Klarna AB
25 * @license http://www.apache.org/licenses/LICENSE-2.0 Apache license v2.0
26 * @link http://developers.klarna.com/
27 */
28
29 /**
30 * Interface for the resource object
31 *
32 * @category Payment
33 * @package Klarna_Checkout
34 * @author Majid G. <majid.garmaroudi@klarna.com>
35 * @author David K. <david.keijser@klarna.com>
36 * @copyright 2015 Klarna AB
37 * @license http://www.apache.org/licenses/LICENSE-2.0 Apache license v2.0
38 * @link http://developers.klarna.com/
39 */
40 interface Klarna_Checkout_ResourceInterface
41 {
42 /**
43 * Get the URL of the resource
44 *
45 * @return string
46 */
47 public function getLocation();
48
49 /**
50 * Set the URL of the resource
51 *
52 * @param string $location URL of the resource
53 *
54 * @return void
55 */
56 public function setLocation($location);
57
58 /**
59 * Return content type of the resource
60 *
61 * @return string Content type
62 */
63 public function getContentType();
64
65 /**
66 * Set the content type
67 *
68 * @param string $contentType Content type
69 *
70 * @return void
71 */
72 public function setContentType($contentType);
73
74 /**
75 * Return accept header of the resource
76 *
77 * @return string Accept header
78 */
79 public function getAccept();
80
81 /**
82 * Set the accept type
83 *
84 * @param string $accept Accept type
85 *
86 * @return void
87 */
88 public function setAccept($accept);
89
90 /**
91 * Update resource with the new data
92 *
93 * @param array $data data
94 *
95 * @return void
96 */
97 public function parse(array $data);
98
99 /**
100 * Basic representation of the object
101 *
102 * @return array data
103 */
104 public function marshal();
105 }
106