Skip to content

Commit 6844755

Browse files
Merge pull request #1121 from scieloorg/beta
Incorporação de códigos estáveis
2 parents e28d758 + d9fee97 commit 6844755

File tree

11 files changed

+407
-371
lines changed

11 files changed

+407
-371
lines changed

scielomanager/api/resources_v1.py

-11
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@
2323
AheadPressRelease,
2424
PressReleaseTranslation,
2525
PressReleaseArticle,
26-
Article,
2726
SubjectCategory,
2827
)
2928

@@ -456,13 +455,3 @@ def build_filters(self, filters=None):
456455
orm_filters['pk__in'] = preleases
457456

458457
return orm_filters
459-
460-
461-
class ArticleResource(ModelResource):
462-
issue = fields.ForeignKey(IssueResource, 'issue')
463-
464-
class Meta(ApiKeyAuthMeta):
465-
queryset = Article.objects.all()
466-
resource_name = 'articles'
467-
default_format = "application/json"
468-
allowed_methods = ['get', 'post', 'put']

scielomanager/api/resources_v2.py

-10
Original file line numberDiff line numberDiff line change
@@ -340,16 +340,6 @@ def build_filters(self, filters=None):
340340
return orm_filters
341341

342342

343-
class ArticleResource(ModelResource):
344-
issue = fields.ForeignKey(IssueResource, 'issue')
345-
346-
class Meta(ApiKeyAuthMeta):
347-
queryset = models.Article.objects.all()
348-
resource_name = 'articles'
349-
default_format = "application/json"
350-
allowed_methods = ['get', 'post', 'put']
351-
352-
353343
class PressReleaseTranslationResource(ModelResource):
354344
language = fields.CharField(readonly=True)
355345

scielomanager/api/tests_resources_v1.py

-5
Original file line numberDiff line numberDiff line change
@@ -16,11 +16,6 @@
1616
IssueResource,
1717
SectionResource,
1818
JournalResource,
19-
# CheckinResource,
20-
# CheckinNoticeResource,
21-
# CheckinArticleResource,
22-
# TicketResource,
23-
# CommentResource,
2419
)
2520

2621
from scielomanager.utils.modelmanagers.helpers import (

scielomanager/health/domain.py

+22-2
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,28 @@ class BackendUnavailable(Exception):
1717
class StatusChecker(object):
1818
""" Realiza e agrupa as verificações de saúde do sistema.
1919
"""
20-
def __init__(self, client=health.Client):
21-
self.client = client(timeout=5)
20+
21+
def __init__(self):
22+
self.Client = health.Client
23+
self.client = None
24+
25+
def __enter__(self, **kwargs):
26+
self.dial(**kwargs)
27+
return self
28+
29+
def __exit__(self, exc_type, exc_value, traceback):
30+
self.close()
31+
32+
def dial(self, timeout=5):
33+
self.client = self.Client(timeout=timeout)
34+
35+
def close(self):
36+
try:
37+
self.client.close()
38+
except AttributeError as exc:
39+
logger.exception(exc)
40+
41+
return None
2242

2343
@property
2444
def is_fully_operational(self):

scielomanager/health/views.py

+22-23
Original file line numberDiff line numberDiff line change
@@ -6,28 +6,27 @@
66

77

88
def home(request):
9-
status_checker = domain.StatusChecker()
9+
with domain.StatusChecker() as status_checker:
10+
try:
11+
statuses = status_checker.overall_status()
12+
is_fully_operational = status_checker.is_fully_operational
13+
elapsed_time = status_checker.elapsed_time[2:7]
14+
except domain.BackendUnavailable as e:
15+
statuses = None
16+
is_fully_operational = None
17+
elapsed_time = None
18+
is_backend_available = False
1019

11-
try:
12-
statuses = status_checker.overall_status()
13-
is_fully_operational = status_checker.is_fully_operational
14-
elapsed_time = status_checker.elapsed_time[2:7]
15-
except domain.BackendUnavailable as e:
16-
statuses = None
17-
is_fully_operational = None
18-
elapsed_time = None
19-
is_backend_available = False
20+
else:
21+
is_backend_available = True
2022

21-
else:
22-
is_backend_available = True
23-
24-
return render_to_response(
25-
'health/overall_status.html',
26-
{
27-
'statuses': statuses,
28-
'is_fully_operational': is_fully_operational,
29-
'is_backend_available': is_backend_available,
30-
'elapsed_time': elapsed_time,
31-
},
32-
context_instance=RequestContext(request)
33-
)
23+
return render_to_response(
24+
'health/overall_status.html',
25+
{
26+
'statuses': statuses,
27+
'is_fully_operational': is_fully_operational,
28+
'is_backend_available': is_backend_available,
29+
'elapsed_time': elapsed_time,
30+
},
31+
context_instance=RequestContext(request)
32+
)

scielomanager/journalmanager/admin.py

-8
Original file line numberDiff line numberDiff line change
@@ -176,11 +176,3 @@ def queryset(self, request):
176176
return PressRelease.nocacheobjects
177177

178178
admin.site.register(PressRelease, PressReleaseAdmin)
179-
180-
181-
class ArticleAdmin(admin.ModelAdmin):
182-
183-
def queryset(self, request):
184-
return Article.nocacheobjects
185-
186-
admin.site.register(Article, ArticleAdmin)

scielomanager/journalmanager/migrations/0002_auto__del_article.py

+363
Large diffs are not rendered by default.

scielomanager/journalmanager/models.py

-38
Original file line numberDiff line numberDiff line change
@@ -1317,44 +1317,6 @@ class AheadPressRelease(PressRelease):
13171317

13181318
journal = models.ForeignKey(Journal, related_name='press_releases')
13191319

1320-
1321-
class Article(caching.base.CachingMixin, models.Model):
1322-
objects = caching.base.CachingManager()
1323-
nocacheobjects = models.Manager()
1324-
1325-
issue = models.ForeignKey(Issue, related_name='articles')
1326-
front = jsonfield.JSONField()
1327-
xml_url = models.CharField(_('XML URL'), max_length=256)
1328-
pdf_url = models.CharField(_('PDF URL'), max_length=256)
1329-
images_url = models.CharField(_('Images URL'), max_length=256)
1330-
1331-
def __unicode__(self):
1332-
return u' - '.join([self.title, str(self.issue)])
1333-
1334-
class Meta:
1335-
permissions = (("list_article", "Can list Article"),)
1336-
1337-
@property
1338-
def title(self):
1339-
1340-
if not 'title-group' in self.front:
1341-
return None
1342-
1343-
default_language = self.front.get('default-language', None)
1344-
1345-
if default_language in self.front['title-group']:
1346-
return self.front['title-group'][default_language]
1347-
1348-
return self.front['title-group'].values()[0]
1349-
1350-
@property
1351-
def titles(self):
1352-
1353-
if not 'title-group' in self.front:
1354-
return None
1355-
1356-
return self.front['title-group']
1357-
13581320
# ---- SIGNALS ------
13591321
models.signals.post_save.connect(create_api_key, sender=User)
13601322

scielomanager/journalmanager/tests/modelfactories.py

-16
Original file line numberDiff line numberDiff line change
@@ -7,22 +7,6 @@
77
from django.contrib.auth.models import Group
88

99

10-
class ArticleFactory(factory.Factory):
11-
FACTORY_FOR = models.Article
12-
13-
front = {
14-
'default-language': 'en',
15-
'title-group': {
16-
'en': u'Article Title',
17-
'pt': u'Título do Artigo',
18-
}
19-
}
20-
21-
xml_url = 'http://xml.url/'
22-
pdf_url = 'http://pdf.url/'
23-
images_url = 'http://img.url/'
24-
25-
2610
class UserFactory(factory.Factory):
2711
FACTORY_FOR = models.User
2812

0 commit comments

Comments
 (0)