forked from spotify/docker-client
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request spotify#697 from Noodle05/master
Implement "hosts", "healthcheck" and "secrets" in service createapi
- Loading branch information
Showing
4 changed files
with
277 additions
and
7 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
70 changes: 70 additions & 0 deletions
70
src/main/java/com/spotify/docker/client/messages/swarm/SecretBind.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,70 @@ | ||
/*- | ||
* -\-\- | ||
* docker-client | ||
* -- | ||
* Copyright (C) 2016 Spotify AB | ||
* -- | ||
* 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. | ||
* -/-/- | ||
*/ | ||
|
||
package com.spotify.docker.client.messages.swarm; | ||
|
||
import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.ANY; | ||
import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE; | ||
|
||
import com.fasterxml.jackson.annotation.JsonAutoDetect; | ||
import com.fasterxml.jackson.annotation.JsonCreator; | ||
import com.fasterxml.jackson.annotation.JsonProperty; | ||
import com.google.auto.value.AutoValue; | ||
|
||
@AutoValue | ||
@JsonAutoDetect(fieldVisibility = ANY, getterVisibility = NONE, setterVisibility = NONE) | ||
public abstract class SecretBind { | ||
@JsonProperty("File") | ||
public abstract SecretFile file(); | ||
|
||
@JsonProperty("SecretID") | ||
public abstract String secretId(); | ||
|
||
@JsonProperty("SecretName") | ||
public abstract String secretName(); | ||
|
||
public static Builder builder() { | ||
return new AutoValue_SecretBind.Builder(); | ||
} | ||
|
||
@AutoValue.Builder | ||
public abstract static class Builder { | ||
|
||
public abstract Builder file(SecretFile file); | ||
|
||
public abstract Builder secretId(String secretId); | ||
|
||
public abstract Builder secretName(String secretName); | ||
|
||
public abstract SecretBind build(); | ||
} | ||
|
||
@JsonCreator | ||
static SecretBind create( | ||
@JsonProperty("File") SecretFile file, | ||
@JsonProperty("SecretID") String secretId, | ||
@JsonProperty("SecretName") String secretName) { | ||
return builder() | ||
.file(file) | ||
.secretId(secretId) | ||
.secretName(secretName) | ||
.build(); | ||
} | ||
} |
82 changes: 82 additions & 0 deletions
82
src/main/java/com/spotify/docker/client/messages/swarm/SecretFile.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,82 @@ | ||
/*- | ||
* -\-\- | ||
* docker-client | ||
* -- | ||
* Copyright (C) 2016 Spotify AB | ||
* -- | ||
* 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. | ||
* -/-/- | ||
*/ | ||
|
||
package com.spotify.docker.client.messages.swarm; | ||
|
||
import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.ANY; | ||
import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE; | ||
|
||
import com.fasterxml.jackson.annotation.JsonAutoDetect; | ||
import com.fasterxml.jackson.annotation.JsonCreator; | ||
import com.fasterxml.jackson.annotation.JsonProperty; | ||
import com.google.auto.value.AutoValue; | ||
|
||
import javax.annotation.Nullable; | ||
|
||
@AutoValue | ||
@JsonAutoDetect(fieldVisibility = ANY, getterVisibility = NONE, setterVisibility = NONE) | ||
public abstract class SecretFile { | ||
@JsonProperty("Name") | ||
public abstract String name(); | ||
|
||
@Nullable | ||
@JsonProperty("UID") | ||
public abstract String uid(); | ||
|
||
@Nullable | ||
@JsonProperty("GID") | ||
public abstract String gid(); | ||
|
||
@Nullable | ||
@JsonProperty("Mode") | ||
public abstract Long mode(); | ||
|
||
public static Builder builder() { | ||
return new AutoValue_SecretFile.Builder(); | ||
} | ||
|
||
@AutoValue.Builder | ||
public abstract static class Builder { | ||
|
||
public abstract Builder name(String name); | ||
|
||
public abstract Builder uid(String uid); | ||
|
||
public abstract Builder gid(String gid); | ||
|
||
public abstract Builder mode(Long mode); | ||
|
||
public abstract SecretFile build(); | ||
} | ||
|
||
@JsonCreator | ||
static SecretFile create( | ||
@JsonProperty("Name") String name, | ||
@JsonProperty("UID") String uid, | ||
@JsonProperty("GID") String gid, | ||
@JsonProperty("Mode") Long mode) { | ||
return builder() | ||
.name(name) | ||
.uid(uid) | ||
.gid(gid) | ||
.mode(mode) | ||
.build(); | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters