Skip to content
This repository has been archived by the owner on Aug 20, 2021. It is now read-only.

Commit

Permalink
feat(dictionary): Add global dictionary
Browse files Browse the repository at this point in the history
  • Loading branch information
brasseld authored and NicolasGeraud committed Sep 7, 2018
1 parent a08c5d6 commit c637425
Show file tree
Hide file tree
Showing 41 changed files with 3,378 additions and 14 deletions.
Expand Up @@ -28,5 +28,9 @@ public enum EventType {
START_API,
STOP_API,
GATEWAY_STARTED,
GATEWAY_STOPPED
GATEWAY_STOPPED,
PUBLISH_DICTIONARY,
UNPUBLISH_DICTIONARY,
START_DICTIONARY,
STOP_DICTIONARY
}
@@ -0,0 +1,158 @@
/**
* Copyright (C) 2015 The Gravitee team (http://gravitee.io)
*
* 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 io.gravitee.management.model.configuration.dictionary;

import com.fasterxml.jackson.annotation.JsonProperty;
import io.gravitee.common.component.Lifecycle;

import java.util.Date;
import java.util.Map;

/**
* @author David BRASSELY (david.brassely at graviteesource.com)
* @author GraviteeSource Team
*/
public class DictionaryEntity {

private String id;

private String name;

private String description;

private DictionaryType type;

@JsonProperty("created_at")
private Date createdAt;

@JsonProperty("updated_at")
private Date updatedAt;

@JsonProperty("deployed_at")
private Date deployedAt;

private Lifecycle.State state;

private Map<String, String> properties;

private DictionaryProviderEntity provider;

private DictionaryTriggerEntity trigger;

public String getId() {
return id;
}

public void setId(String id) {
this.id = id;
}

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public DictionaryType getType() {
return type;
}

public void setType(DictionaryType type) {
this.type = type;
}

public String getDescription() {
return description;
}

public void setDescription(String description) {
this.description = description;
}


public Date getCreatedAt() {
return createdAt;
}

public void setCreatedAt(Date createdAt) {
this.createdAt = createdAt;
}

public Date getUpdatedAt() {
return updatedAt;
}

public void setUpdatedAt(Date updatedAt) {
this.updatedAt = updatedAt;
}

public Date getDeployedAt() {
return deployedAt;
}

public void setDeployedAt(Date deployedAt) {
this.deployedAt = deployedAt;
}

public Map<String, String> getProperties() {
return properties;
}

public void setProperties(Map<String, String> properties) {
this.properties = properties;
}

public DictionaryProviderEntity getProvider() {
return provider;
}

public void setProvider(DictionaryProviderEntity provider) {
this.provider = provider;
}

public DictionaryTriggerEntity getTrigger() {
return trigger;
}

public void setTrigger(DictionaryTriggerEntity trigger) {
this.trigger = trigger;
}

public Lifecycle.State getState() {
return state;
}

public void setState(Lifecycle.State state) {
this.state = state;
}

@Override
public boolean equals(Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;

DictionaryEntity that = (DictionaryEntity) o;

return id.equals(that.id);
}

@Override
public int hashCode() {
return id.hashCode();
}
}
@@ -0,0 +1,146 @@
/**
* Copyright (C) 2015 The Gravitee team (http://gravitee.io)
*
* 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 io.gravitee.management.model.configuration.dictionary;

import com.fasterxml.jackson.annotation.JsonProperty;
import io.gravitee.common.component.Lifecycle;

import java.util.Date;

/**
* @author David BRASSELY (david.brassely at graviteesource.com)
* @author GraviteeSource Team
*/
public class DictionaryListItem {

private String id;

private String name;

private String description;

private DictionaryType type;

private String provider;

@JsonProperty("created_at")
private Date createdAt;

@JsonProperty("updated_at")
private Date updatedAt;

@JsonProperty("deployed_at")
private Date deployedAt;

private Lifecycle.State state;

private int properties;

public String getId() {
return id;
}

public void setId(String id) {
this.id = id;
}

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public String getDescription() {
return description;
}

public void setDescription(String description) {
this.description = description;
}

public DictionaryType getType() {
return type;
}

public void setType(DictionaryType type) {
this.type = type;
}

public String getProvider() {
return provider;
}

public void setProvider(String provider) {
this.provider = provider;
}

public Date getCreatedAt() {
return createdAt;
}

public void setCreatedAt(Date createdAt) {
this.createdAt = createdAt;
}

public Date getUpdatedAt() {
return updatedAt;
}

public void setUpdatedAt(Date updatedAt) {
this.updatedAt = updatedAt;
}

public Date getDeployedAt() {
return deployedAt;
}

public void setDeployedAt(Date deployedAt) {
this.deployedAt = deployedAt;
}

public Lifecycle.State getState() {
return state;
}

public void setState(Lifecycle.State state) {
this.state = state;
}

public int getProperties() {
return properties;
}

public void setProperties(int properties) {
this.properties = properties;
}

@Override
public boolean equals(Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;

DictionaryListItem that = (DictionaryListItem) o;

return id.equals(that.id);
}

@Override
public int hashCode() {
return id.hashCode();
}
}
@@ -0,0 +1,49 @@
/**
* Copyright (C) 2015 The Gravitee team (http://gravitee.io)
*
* 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 io.gravitee.management.model.configuration.dictionary;

import com.fasterxml.jackson.databind.JsonNode;

import javax.validation.constraints.NotNull;

/**
* @author David BRASSELY (david.brassely at graviteesource.com)
* @author GraviteeSource Team
*/
public class DictionaryProviderEntity {

@NotNull
private String type;

@NotNull
public JsonNode configuration;

public String getType() {
return type;
}

public void setType(String type) {
this.type = type;
}

public JsonNode getConfiguration() {
return configuration;
}

public void setConfiguration(JsonNode configuration) {
this.configuration = configuration;
}
}

0 comments on commit c637425

Please sign in to comment.