Brendan Burns
99b9785881
Merge pull request #3836 from mfojtik/extract_list_ptr
...
Ensure the ptr is pointing to reflect.Slice in ExtractList
2015-01-27 10:00:33 -08:00
Michal Fojtik
ae3f10a397
Ensure the ptr is pointing to reflect.Slice in ExtractList
2015-01-27 18:02:37 +01:00
Mike Danese
d77743a07c
gimports nits
2015-01-26 22:42:29 -08:00
Michal Fojtik
e7df8aa098
Fix ExtractList to support extraction from generic api.List{}
2015-01-23 22:13:37 +01:00
Clayton Coleman
5f6caaba2e
Add TypeAccessor to api/meta for objects without Object/ListMeta
...
Adding objects that have TypeMeta (use runtime.Scheme) but do not
expose ObjectMeta/ListMeta (because they are not Kube API objects)
and wanted to get the simpler access path for in memory objects.
2015-01-20 17:37:24 -05:00
Clayton Coleman
8a833ca701
Add a List type that can contain arbitrary objects
...
Supports objects that the core schema may not recognize and
preserves them unmodified as runtime.Unknown
2014-12-09 10:31:17 -05:00
Clayton Coleman
db2c59ff61
Allow conversion between []runtime.Object and []runtime.RawExtension
...
This allows generic lists with unrecognized objects to be roundtripped
between internal and external objects.
2014-12-09 10:31:17 -05:00
Clayton Coleman
1eaa5c41f9
RawExtension was not properly marshalled
...
MarshalJSON can't use a pointer to a struct for RawExtension:
http://stackoverflow.com/questions/21390979/custom-marshaljson-never-gets-called-in-go
2014-12-09 10:31:14 -05:00
Clayton Coleman
714dbf4522
Shrink runtime.TypeMeta to be equivalent to api TypeMeta
...
Remove unused fuzzing
2014-12-07 20:49:07 -05:00
Clayton Coleman
84d84c50c2
Add a strongly typed error for unrecognized kind/type/version
2014-12-07 20:48:16 -05:00
derekwaynecarr
ef25520baa
make selfLink namespace aware
2014-12-05 17:37:11 -05:00
Sam Ghods
6399854240
Remove unused YAML tags and GetYAML/SetYAML methods
...
Unneeded after move to ghodss/yaml.
2014-12-02 16:25:28 -08:00
Sam Ghods
9a9a1e0939
Move from go-yaml/yaml to ghodss/yaml
2014-12-02 16:24:05 -08:00
Daniel Smith
8d762c996a
Remove boilerplate coversion functions
2014-11-24 12:57:34 -08:00
Tim Hockin
95a9098311
fix 'go vet' warnings
2014-11-21 09:45:28 +08:00
Clayton Coleman
39882a3555
Allow Create/Update/Delete kubectl commands to handle arbitrary objects
...
* Ensure kubectl uses abstractions from other parts of Kube
* Begin adding abstractions that allow arbitrary objects
* Refactor "update" to more closely match allowed behavior
2014-11-04 10:44:56 -05:00
Clayton Coleman
778a50d00b
Introduce ObjectConvertor for conversion to known API versions
...
Will allow clients to transform internal objects to a version
suitable for external output.
2014-11-04 10:34:15 -05:00
Daniel Smith
b28234fac6
Fix self linking of objects returned in lists.
2014-10-30 15:04:11 -07:00
Daniel Smith
5ac88dbe2e
Merge pull request #2055 from smarterclayton/define_an_interface_for_typing
...
Make DataVersionAndKind public on runtime.Scheme
2014-10-29 10:29:39 -07:00
Daniel Smith
94e736e286
Merge pull request #2009 from smarterclayton/unify_meta
...
Unify Accessor for ObjectMeta/TypeMeta/ListMeta
2014-10-29 09:58:46 -07:00
Clayton Coleman
58715527aa
Make DataVersionAndKind public on runtime.Scheme
...
Add a new ObjectTyper interface that clients can depend on for
converting between data and object to version and kind.
2014-10-29 12:10:55 -04:00
Vojtech Vitek (V-Teq)
90809c270d
Use conversion.EnforcePtr() where appropriate
...
Signed-off-by: Vojtech Vitek (V-Teq) <vvitek@redhat.com>
2014-10-28 16:36:09 +01:00
Clayton Coleman
66ace4c270
Begin to unify ResourceVersioner and SelfLinker
...
Create a new MetadataAccessor interface that combines both
and use it where previously latest.ResourceVersioner and SelfLinker
were being used.
Adds Namespace to the get/set interface. Adds TODO about future
fast path for metadata (as per thockin's comment)
2014-10-27 16:00:55 -04:00
Vojtech Vitek (V-Teq)
6a6f24b126
Fix reflect panic in runtime/conversion
...
Fixes `panic: reflect: call of reflect.Value.Type on zero Value`
when calling conversion.EnforcePtr() or
runtime.Scheme.ObjectVersionAndKind() from default type switch.
Signed-off-by: Vojtech Vitek (V-Teq) <vvitek@redhat.com>
2014-10-27 06:01:14 +01:00
Clayton Coleman
644eb70085
Refactor tests to split ObjectMeta from TypeMeta
2014-10-24 11:22:21 -04:00
Clayton Coleman
35eaf90255
Add UID to MetaAccessor and Ref
2014-10-22 22:59:15 -04:00
Clayton Coleman
1ccb86c760
Rename methods in api/meta to be cleaner
2014-10-22 22:59:12 -04:00
Clayton Coleman
64d98cba73
Move typemeta.go to api/meta/meta.go
...
Prepares for the meta object to front multiple underlying types
when TypeMeta and ObjectMeta is split in internal and v1beta3, but
combined in v1beta1 and v1beta2
2014-10-22 22:28:06 -04:00
Clayton Coleman
bb77a5d15f
Rename ID -> Name
2014-10-22 15:00:26 -04:00
Vojtech Vitek (V-Teq)
755d4d441a
Fix typos
2014-10-21 18:57:20 +02:00
Clayton Coleman
73dba3a613
Move FindTypeMeta into the proper file
2014-10-13 23:29:40 -04:00
Clayton Coleman
485106e270
Remove unused code
2014-10-13 23:29:39 -04:00
Clayton Coleman
13992837ea
Use one copy of EnforcePtr
2014-10-13 23:29:39 -04:00
Clayton Coleman
d488e238dd
Genericize MetaInsertionFactory into a simpler interface
...
The common path code for MIF goes through a conversion cycle - it
can also be done through reflection. This simplifies the Create/Update
methods into Interpret (return version) and Update (through reflection).
In addition it uses only one MetaFactory implementation across all of
our packages which reduces a bit of duplication.
2014-10-13 23:29:39 -04:00
Tim Hockin
d84816aaec
Merge pull request #1709 from erictune/move_line
...
Fix format specifiers in Printf-type functions.
2014-10-09 20:40:35 -07:00
Eric Tune
800284164a
Fix format specifiers in Printf-type functions.
2014-10-09 17:06:32 -07:00
Clayton Coleman
5382627e6a
Move Codec functions to their own file
2014-10-09 17:25:23 -04:00
Clayton Coleman
935e97d59d
Move ObjectDiff into util
2014-10-09 17:23:43 -04:00
Clayton Coleman
82bcdd3b3b
Make ResourceVersion a string internally instead of uint64
...
Allows us to define different watch versioning regimes in the future
as well as to encode information with the resource version.
This changes /watch/resources?resourceVersion=3 to start the watch at
4 instead of 3, which means clients can read a resource version and
then send it back to the server. Clients should no longer do math on
resource versions.
2014-10-07 19:00:26 -04:00
Daniel Smith
ee107d3fad
fix extra un-cosmetic extraneous code.
2014-10-07 14:08:18 -07:00
Daniel Smith
0212c9b29a
Merge pull request #1623 from smarterclayton/rename_jsonbase
...
Rename JSONBase -> TypeMeta in preparation for v1beta3
2014-10-07 10:50:28 -07:00
Joe Beda
c7e88427dc
Merge pull request #1619 from VojtechVitek/typo
...
Fix typo
2014-10-07 09:04:04 -07:00
Clayton Coleman
d3e51a0f24
Rename JSONBase -> TypeMeta in preparation for v1beta3
...
Will make subsequent refactor much easier
2014-10-07 11:12:16 -04:00
Vojtech Vitek (V-Teq)
0ffb1d7fec
Fix typo
2014-10-07 14:14:00 +02:00
Clayton Coleman
305db35422
Add a Log method on Scheme for better debugging
2014-10-05 17:17:25 -04:00
Daniel Smith
6ac7578699
Add GetReference()
2014-09-26 17:40:07 -07:00
Daniel Smith
75b93cf7e9
Add SelfLinker
2014-09-26 14:51:13 -07:00
Daniel Smith
957b16053a
restore test that somehow vanished + add SetList
2014-09-25 12:07:07 -07:00
Clayton Coleman
fece926e2b
Remove unnecessary EmbeddedObjects
...
Clarify the tests in embedded_test.go to indicate that unmarshalling
of an internal object (runtime.EmbeddedObject) will not work. Instead,
consumers should decode raw external objects.
2014-09-22 16:03:07 -04:00
Clayton Coleman
9a0add3c96
runtime.RawExtension must copy the buffer, not use it
2014-09-22 15:57:37 -04:00